上周我在SO上阅读了类似于this discussion的内容,现在我遇到了找不到该线程的问题。

我需要将双引号“分配给wchar_t类型的变量,我使用

wchar_t atest = '"';
wchar_t atest2 = '\"';

在VS调试器中,atest显示为34 L'"'(现在我看到引号在哪里分开),而atest238 L'&'。我知道现在要使用哪个,但不知道为什么。创建atest2时会发生什么情况?

最佳答案

您拥有的是一个多字符常量。根据C(++)规范,它们是合法的,但其解释是实现定义的。有关详细信息,请参见MSDN,但总之:不要这样做。

关于c++ - 在C++中分配给char类型(不是String)时如何转义字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8001778/

10-10 21:15