We can get the length of a string using the .size() method like this:
string message = "Hello world";
// Printing the length:
cout << message.size() << endl; // Output: 11
// Changing the message:
message += "!";
// Printing the new length:
cout << message.size() << endl; // Output: 12
Accessing characters from the end:
The length is useful for accessing characters from the end of a string.
Because strings are 0-indexed, the index of the last character is length - 1:
string message = "Hello world";
int length = message.size();
// Printing the last character:
cout << message[length - 1] << endl; // Output: d
// Printing the second to last character:
cout << message[length - 2] << endl; // Output: l
In general, if you want the nth last character, you use message[length - n].
Slicing characters from the end:
The length is also useful for slicing some characters from the end of a string:
string message = "Hello world";
int length = message.size();
// Slicing last 4 characters:
string lastChars = message.substr(length - 4);
cout << lastChars << endl; // Output: orld
// Slicing last 7 characters:
lastChars = message.substr(length - 7);
cout << lastChars << endl; // Output: o world
In general, if you want the last n characters, you use message.substr(length - n).
Assignment
Follow the Coding Tutorial and let's practice with string length!
Hint
Look at the examples above if you get stuck.
Free plan: 30 tutor messages. PRO is unlimited.
