一句话理解
字符串长度用 s.size() 或 s.length(),结果是字符个数。
为什么要学
循环上界、判断空串,都靠它。
讲解
空串长度 0。注意返回类型是无符号的 size_t。
s.size() - 1 在空串时会变成很大的数,因为无符号下溢。先判断非空。
和 int 比较时,常见写法 int n = s.size();。
例子
string s = "abcd";
cout << s.size();
输出:
4
四个字符,长度 4。
常见错误
- 空串时写
s.size()-1当最后一个下标。 - 把长度当成最后一个下标,循环
i <= s.size()越界。