Open In App

C program to find the length of a string

Improve
Improve
Like Article
Like
Save
Share
Report

Given a string str. The task is to find the length of the string.


Examples

Input: str = "Geeks"
Output: Length of Str is : 5
Input: str = "GeeksforGeeks"
Output: Length of Str is : 13

In the below program, to find the length of the string str, first the string is taken as input from the user using scanf in Str      , and then the length of Str is calculated using loop      and using strlen()      method .
Below is the C program to find the length of the string.

Example 1: Using loop to calculate the length of string.

C

// C program to find the length of string
#include <stdio.h>
#include <string.h>
 
int main()
{
    char Str[1000];
    int i;
 
    printf("Enter the String: ");
    scanf("%s", Str);
 
    for (i = 0; Str[i] != '\0'; ++i);
 
    printf("Length of Str is %d", i);
 
    return 0;
}

                    

Output
Enter the String: Length of Str is 0

Time Complexity: O(N)
Auxiliary Space: O(1)

Example 2: Using strlen() to find the length of the string.
 

C

// C program to find the length of
// string using strlen function
#include <stdio.h>
#include <string.h>
 
int main()
{
    char Str[1000];
    int i;
 
    printf("Enter the String: ");
    scanf("%s", Str);
 
    printf("Length of Str is %ld", strlen(Str));
 
    return 0;
}

                    

Output
Enter the String: Length of Str is 0

Time Complexity: O(1)
Auxiliary Space: O(1)

Example 3: Using sizeof() to find the length of the string.

C

// C program to find the length of
// string using sizeof() function
#include <stdio.h>
#include <string.h>
 
int main()
{
 
    printf("Enter the String: ");
 
    char ss[] = "geeks";
 
    printf("%s\n", ss);
 
    // print size after removing null char.
    printf("Length of Str is %ld", sizeof(ss) - 1);
 
    return 0;
}
// This code is contributed by ksam24000

                    

Output
Enter the String: geeks
Length of Str is 5

Time Complexity: O(1)
Auxiliary Space: O(1)

Example 4: Using Pointer Subtraction

C

// C program to find the size of string by pointer
// substraction
#include <stdio.h>
 
int main()
{
    char str[] = "Geeks";
    char* ptr = str;
 
    // traversing till last pointer
    while (*ptr) {
        ptr++;
    }
 
    printf("Address of start position of string : %x\n",
           str);
    printf("Address of end position of string : %x\n", ptr);
 
    // difference between the address will give the length
    // of string
 
    int length = ptr - str;
    printf("Length of the string: %d\n", length);
    return 0;
}
// contributed by puligokulakishorereddy

                    

Output
Address of start position of string : e996300
Address of end position of string : e996305
Length of the string: 5

Time Complexity: O(n)
Space Complexity: O(1)

Explanation

  1. In the main() function, a character array str[] is defined and initialized with the string “Greeks“.
  2. A pointer ptr is declared and initialized with the starting address of the str = e996300 array.
  3. The code enters a while loop that iterates until the value pointed to by ptr is not null. In C, the null character ‘\0‘ signifies the end of a string.
  4. Inside the loop, the ptr is incremented to point to the next character in the string.
  5. After the loop, the code calculates the length of the string by subtracting the starting address of str = e996300 from the final value of ptr = e996305. This pointer subtraction gives the number of elements (characters) between the two addresses

G

e

e

k

s

\0

e996300

e996301e996302e996303e996304e996305

Note: The address may be different in different execution of the above program.



Last Updated : 12 Sep, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads