C++中怎么去获取字符串长度
时间: 2024-04-08 12:29:25 浏览: 92
在 C++ 中,可以使用 `std::string` 类的 `length()` 或 `size()` 成员函数来获取字符串的长度。这两个成员函数的作用是相同的,返回字符串中字符的数量。
下面是一个例子:
```cpp
#include <iostream>
#include <string>
int main() {
std::string myString = "Hello, World!";
int length = myString.length(); // 或者使用 myString.size();
std::cout << "字符串的长度为:" << length << std::endl;
return 0;
}
```
输出结果为:
```
字符串的长度为:13
```
使用 `length()` 或 `size()` 成员函数可以方便地获取字符串的长度。
相关问题
c++中获取字符串长度的函数
在 C++ 中,可以使用标准库中的 `strlen()` 函数来获取 C 风格字符串的长度,但是对于 C++ 中的 `std::string` 类型的字符串,应该使用 `length()` 或 `size()` 成员函数来获取字符串的长度。
使用 `strlen()` 函数获取 C 风格字符串的长度,需要包含头文件 `cstring`,示例如下:
```c++
#include <cstring>
#include <iostream>
int main() {
char str[] = "Hello, world!";
int len = strlen(str);
std::cout << "字符串长度为:" << len << std::endl;
return 0;
}
```
输出结果为:
```
字符串长度为:13
```
对于 `std::string` 类型的字符串,可以使用 `length()` 或 `size()` 成员函数来获取字符串的长度,示例如下:
```c++
#include <string>
#include <iostream>
int main() {
std::string str = "Hello, world!";
int len = str.length(); // 或者 int len = str.size();
std::cout << "字符串长度为:" << len << std::endl;
return 0;
}
```
输出结果同样为:
```
字符串长度为:13
```
需要注意的是,对于 `std::string` 类型的字符串,使用 `length()` 或 `size()` 函数返回的类型是 `std::string::size_type`,而不是 `int`。因此,应该将结果赋值给 `std::string::size_type` 类型的变量。
C/C++中如何获取字符串的长度?
在C/C++中,获取字符串的长度通常有几种方法:
1. **使用内置函数**:如果你有一个指向`char`数组的指针,可以使用`strlen()`函数从`NULL`字符算起计算字符串的长度。例如:
```cpp
size_t len = strlen(s);
```
这里`s`是C风格的字符串。
2. **使用C++标准库中的`std::string`**:如果在C++环境中并且使用了`<cstring>`头文件,你可以直接通过`std::string`对象的成员函数`length()`获取长度:
```cpp
std::string str;
size_t len = str.length();
```
3. **手动遍历**:如果你没有使用库函数,也可以自己遍历数组直到找到`\0`终止符,但这不是推荐做法,因为可能会导致未初始化的内存读取错误:
```cpp
char* p = s;
while (*p != '\0') {
++len;
++p;
}
```
注意这种方法只适用于C风格的字符串。
阅读全文