【发布时间】:2020-09-21 04:28:13
【问题描述】:
#include<iostream>
#include<string>
using namespace std;
int main(){
string i = "abc\0defg";
cout<<i<<endl;
// This prints "abc"
string x = "abcdefg";
x[3]='\0';
cout << x << endl;
// This prints "abcefg"
}
我知道 C++ String 类的实例 i 不会将 \0 解释为字符串的结尾。为什么字符串i 忽略了\0 之后的所有内容?字符串i和x有什么区别?
【问题讨论】:
-
std::string 不是空终止的。 stackoverflow.com/questions/11752705/…