C++获取string长度
时间: 2023-09-25 14:14:00 浏览: 103
在C++中,你可以使用`size()`或`length()`成员函数来获取一个`std::string`对象的长度。以下是两种方法的示例:
```cpp
#include <iostream>
#include <string>
int main() {
std::string str = "Hello, world!";
int len1 = str.size(); // 使用 size() 函数
int len2 = str.length(); // 使用 length() 函数
std::cout << "Length 1: " << len1 << std::endl;
std::cout << "Length 2: " << len2 << std::endl;
return 0;
}
```
在上面的示例中,我们创建了一个名为`str`的`std::string`对象,并初始化为`"Hello, world!"`。然后,我们使用`size()`函数和`length()`函数分别获取字符串的长度,并将结果存储在`len1`和`len2`中。最后,我们将结果打印出来。
无论是使用`size()`还是`length()`,它们都可以用来获取字符串的长度,返回的结果是相同的。你可以根据个人偏好选择使用其中之一。
相关问题
C++获取string字符串的长度
在C++中,有多种方法可以获取`std::string`类型的字符串长度。以下是三种常见的方式:
1. 使用`length()`或`size()`成员函数[^1]:
```cpp
#include <string>
#include <iostream>
using namespace std;
int main() {
string str = "my string";
cout << str.length() << endl; // 输出字符串长度
// 或者使用 size() 函数,效果相同
cout << str.size() << endl;
return 0;
}
```
2. 使用`strlen()`函数,但需要先通过`c_str()`转换成`const char*`:
```cpp
#include <string>
#include <iostream>
using namespace std;
int main() {
string str = "Test string";
const char* cstr = str.c_str();
cout << strlen(cstr) << endl; // 输出字符串长度(注意这不是直接从std::string得到的)
return 0;
}
```
c++ 获取string的字节数
在C++中,可以使用`std::string`类来表示字符串。要获取一个`std::string`对象的字节数,可以使用`size()`函数或者`length()`函数来获取字符串的长度,然后再乘以每个字符的字节数。
在C++中,一个字符通常占用1个字节(8位),但是对于一些特殊字符或者Unicode字符,可能会占用多个字节。如果你想要获取字符串的实际字节数,可以使用`sizeof()`运算符来获取字符串对象的大小。
下面是一个示例代码:
```cpp
#include <iostream>
#include <string>
int main() {
std::string str = "Hello, C++!";
// 获取字符串的字节数
int byteCount = str.size() * sizeof(str[0]);
std::cout << "字符串的字节数为:" << byteCount << std::endl;
return 0;
}
```
输出结果将会是字符串的字节数。请注意,这里使用了`sizeof()`运算符来获取字符串对象的大小,而不是直接使用`size()`函数。因为`sizeof()`运算符返回的是对象在内存中所占用的字节数,而`size()`函数返回的是字符串中字符的数量。
阅读全文