std::basic_string::size, std::basic_string::length
From cppreference.com
                    
                                        
                    < cpplrm; | stringlrm; | basic string
                    
                                                            
                    |   size_type size() const;  | 
(until C++11) | |
|   size_type size() const noexcept;  | 
(since C++11) | |
|   size_type length() const;  | 
(until C++11) | |
|   size_type length() const noexcept;  | 
(since C++11) | |
Returns the number of CharT elements in the string, i.e. std::distance(begin(), end()). 
Parameters
(none)
Return value
The number of CharT elements in the string.
Complexity
| 
 Unspecified  | 
(until C++11) | 
| 
 Constant  | 
(since C++11) | 
Notes
For std::string, the elements are bytes (objects of type char), which are not the same as characters if a multibyte encoding such as UTF-8 is used.
Example
Run this code
#include <cassert> #include <iterator> #include <string> int main() { std::string s("Exemplar"); assert(8 == s.size()); assert(s.size() == s.length()); assert(s.size() == static_cast<std::string::size_type>( std::distance(s.begin(), s.end()))); std::u32string a(U""); // 8 code points assert(8 == a.size()); // 8 code units in UTF-32 std::u16string b(u""); // 8 code points assert(8 == b.size()); // 8 code units in UTF-16 std::string c(u8""); // 8 code points assert(24 == c.size()); // 24 code units in UTF-8 }
 
See also
|    checks whether the string is empty   (public member function)  | |
|    returns the maximum number of characters   (public member function)  |