1

我遇到了两种不同的情况,但无法得出内部实际发生的情况的结论。谁能解释一下?

情况1:

#include<iostream>
using namespace std;
int main() {
string my_string = "This is a sam\0ple text"; //check the \0
cout << my_string;
return 0;
}

输出:

This is a sam

案例二:

#include<iostream>
using namespace std;
int main() {
string my_string = "This is a sample text"; 
my_string[13]='\0';
cout << my_string;
return 0;
}

输出:

This is a sam le text

我认为这两种情况是相似的,因此输出应该是相同的,但实际上这就是正在发生的事情。请解释。

4

0 回答 0