In this article, you will learn how to find the length of a string without using a string header file and loops in C. I will explain two ways to solve the problem of finding the string length without <string.h>
and loop.
But before understanding the solution let’s first understand what string is in C.
In C programming language, a string is an array of characters that is terminated with a null character '\0'
. The length of a string will be determined by counting all the characters in the string (except for the null character).
I have already written a blog post to find the string length using the strlen and loop; if you want you can check.
Now let’s come to the topic and see the two ways to find the length of a string without string.h and loop.
1. Using the recursive method:
You can use recursion to find the length of the given string. See the following example which finds the length of the string.
// C program to find string len using recursion #include <stdio.h> #define BUFFER_SIZE 100 void getLenOfString(const char *pString, int len) { if(pString[len] == '\0') { printf("String len is:%d\n", len); return; } getLenOfString(pString,len+1); } int main() { char string[BUFFER_SIZE] = {0}; //get String printf("Give a string : "); scanf("%s",string); printf("Entered string is:%s\n", string); //find string len getLenOfString(string, 0); return 0; }
Output:
Give a string : Aticleworld Entered string is:Aticleworld String len is:11
Explanation:
The function getLenOfString()
calls itself until the null character is found in the above example code. And for each call increment the variable len
that represents the length of the string.
2. Using the printf():
Using the printf() you can also get the length of the string. The printf function returns the number of characters transmitted, or a negative value if an output or encoding error occurred.
#include <stdio.h> #define BUFFER_SIZE 50 int main() { // entered string char str[BUFFER_SIZE] = "Aticleworld"; // printing entered string printf("Entered String is:"); // printf returns length of string const int strLen = printf("%s\n", str); // printing length printf("String Length is: %d", (strLen - 1)); }
Output:
Entered String is:Aticleworld String Length is: 11
Recommended Articles for you:
- C Program to Find the Length of a String using strlen().
- Best Gifts for the programmer and techies.
- C Programming Courses And Tutorials.
- CPP Programming Courses And Tutorials.
- Python Courses and Tutorials.
- Implement and use of memset of in C
- Use and create strcspn in programming.
- Use of memchr in C programming.
- strrchr in C programming.
- strchr in C programming.
- How to Use strncpy() and implement own strncpy().
- What is the difference between char array and char pointer in C?
- C identifiers and naming rules.
- Stringizing operator (#) in C.
- Token Pasting Operator in C/C++ programming.