sam*_*mer 26 c++ string escaping
我有一个问题,其中字符串的大小是由一个'\0'字符的存在实现的.我搜索到了所有的东西,但仍无法得到答案.
这是片段.
int main()
{
std::string a = "123123\0shai\0";
std::cout << a.length();
}
Run Code Online (Sandbox Code Playgroud)
这种情况下的输出是
6
Run Code Online (Sandbox Code Playgroud)
其中具有不同字符串的相同程序具有数字而不是字符
int main()
{
std::string a = "123123\0123\0";
std::cout << a.length();
}
Run Code Online (Sandbox Code Playgroud)
给出一个输出
8
Run Code Online (Sandbox Code Playgroud)
引擎盖下究竟发生了什么?'\0'角色的存在如何改变行为?
Bo *_*son 12
如果你检查ideone上的着色,你会看到它 \012有不同的颜色.那是因为这是用八进制写的单个字符.