1

I have declared a string array String s;

I tried finding the length of the string by giving strlen(s) but it didnt work . How to get the length of the string ?

Chubsdad
  • 24,777
  • 4
  • 73
  • 129
Hick
  • 35,524
  • 46
  • 151
  • 243
  • 1
    show the declaration, just to be clear – AndersK Nov 22 '10 at 10:53
  • String (with a capital S) is not a class specified in the C++ Standard. If you don't say which library you're using, nobody can say for sure what functions it provides to tell you the length. Still, common options are data members such as s.length(), s.size(). You could look at the header you include to get access to the class, and see what functions it does provide. – Tony Delroy Nov 22 '10 at 12:32

4 Answers4

2

The function strlen does not take a string, but an array of chars. Please see this reference for examples. If you are using the type string you will find it's length by using the function length(), like this:

std::string text = "Some text"; 
int length = text.length(); 

For more examples see this other question.

Community
  • 1
  • 1
stiank81
  • 25,418
  • 43
  • 131
  • 202
1

Use the member function length().

Shamim Hafiz - MSFT
  • 21,454
  • 43
  • 116
  • 176
1
string s;

declares a string named s, not an array of strings, which would be

string array[10];

for instance. To get the length of a string, you call its size() or length() method:

size_t len = s.size();
dandan78
  • 13,328
  • 13
  • 64
  • 78
0

Alot of methods that I have seen take a const char * (which also might be the 'string' that he is refering to) will loop through the variable until they hit a NULL \0 character.

This often is how 'string arrays' are ended and will usually be a good stop to calculate the string length.

g19fanatic
  • 10,567
  • 6
  • 33
  • 63