Length of the string without using strlen() function in C++

Understanding String Length Calculation

The length of a string is the number of characters it contains excluding the null terminator '\0'. In C++, we can determine this without using the built-in strlen() function.

We will explore three different methods to find the length of a string in C++.

Method 1: Using a Loop

This method uses a loop to count the characters in the string.

#include <iostream>
using namespace std;

int main() {
    string str;
    int length = 0;
    cout << "Enter a string: ";
    getline(cin, str);
    
    while (str[length] != '\0') {
        length++;
    }
    
    cout << "Length of the string is " << length;
    return 0;
}
            
Input: Hello
Output: Length of the string is 5

Method 2: Using Recursion

This method calculates the length of the string recursively.

#include <iostream>
using namespace std;

int string_length(const char *str) {
    if (*str == '\0')
        return 0;
    return 1 + string_length(str + 1);
}

int main() {
    string str;
    cout << "Enter a string: ";
    getline(cin, str);
    cout << "Length of the string is " << string_length(str.c_str());
    return 0;
}
            
Input: World
Output: Length of the string is 5

Method 3: Using Pointers

This method uses pointer arithmetic to determine the string length.

#include <iostream>
using namespace std;

int find_length(const char *str) {
    const char *ptr = str;
    while (*ptr != '\0') {
        ptr++;
    }
    return ptr - str;
}

int main() {
    string str;
    cout << "Enter a string: ";
    getline(cin, str);
    cout << "Length of the string is " << find_length(str.c_str());
    return 0;
}
            
Input: Programming
Output: Length of the string is 11
Strings

Below You will find some of the most important codes in languages like C, C++, Java, and Python. These codes are of prime importance for college semester exams and online tests.

Getting Started

Check whether a character is a vowel or consonant: C C++ Java Python

Check whether a character is an alphabet or not: C C++ Java Python

Find the ASCII value of a character: C C++ Java Python

Length of the string without using strlen() function: C C++ Java Python

Toggle each character in a string: C C++ Java Python

Count the number of vowels: C C++ Java Python

Remove the vowels from a string: C C++ Java Python

Check if the given string is Palindrome or not: C C++ Java Python

Print the given string in reverse order: C C++ Java Python

Remove all characters from string except alphabets: C C++ Java Python

Remove spaces from a string: C C++ Java Python

Replace a sub-string in a string: C C++ Java Python

Count common sub-sequences in two strings: C C++ Java Python

Compare two strings with wildcard support in one of them: C C++ Java Python

List all permutations of a given string in dictionary order: C C++ Java Python

Operations on Strings: C C++ Java Python