C++ C++;,字符串声明中的附加字符

C++ C++;,字符串声明中的附加字符,c++,string,C++,String,我使用Visual Studio 2015。 有一个简单的代码 char blablabla[] = "‭ABCDEFGH"; int main() { int a = sizeof(blablabla); return 0; } 调试器显示bla有“?ABCDEFGH”,a是10。 这个问号在这里做什么?您的数组中有一个unicode字符\u202D,在当前代码页中无法表示。因此显示了?字符。您是否从某处复制并粘贴了字符串?我已使用十六进制编辑器打开main.cpp。它不是

我使用Visual Studio 2015。 有一个简单的代码

char blablabla[] = "‭ABCDEFGH";

int main()
{
    int a = sizeof(blablabla);
    return 0;
}
调试器显示bla有“?ABCDEFGH”,a是10。
这个问号在这里做什么?

您的数组中有一个unicode字符
\u202D
,在当前代码页中无法表示。因此显示了
字符。

您是否从某处复制并粘贴了字符串?我已使用十六进制编辑器打开main.cpp。它不是UNICODE格式,但在字母A前面有一些奇怪的符号。“–ABCDEFGH”这是字符串在十六进制中的外观editor@zulunation看来你已经找到了答案。但是这个符号在字符串声明中到底在干什么?@zulunation你可能没有键入那个文本,但你从某个地方复制/粘贴了它,不管什么原因,u202d都是从那里来的。