当我用单引号将字符串括起来时,C++ std::cout 打印奇怪的字符[重复]
Posted
技术标签:
【中文标题】当我用单引号将字符串括起来时,C++ std::cout 打印奇怪的字符[重复]【英文标题】:C++ std::cout printing wierd characters when I enclose a string with single quotations [duplicate] 【发布时间】:2015-10-22 22:41:53 【问题描述】:当我尝试std::cout << ', ';
时,我得到了11296
,我知道我应该用", "
括起来,但为什么我得到了这个号码?
【问题讨论】:
那些不是“括号”。 【参考方案1】:单引号中有两个字符(逗号和空格)。 这种多字符文字的值取决于您的编译器等。
在这种情况下,ASCII 值是 44 和 32,并且
11296 = 44 * 256 + 32
即。两个字节一起理解为 16 位整数
【讨论】:
【参考方案2】:根据标准(N4296, 2.13.3 Character literals,强调我的):
一个 包含多个 c-char 的普通字符文字是多字符文字。 多字符 文字,或包含单个 c-char 的普通字符文字,不能在执行字符中表示 set,有条件支持,具有 int 类型,并具有实现定义的值。
“有条件支持”是 (1.3.5)
实现不需要支持的程序结构
【讨论】:
以上是关于当我用单引号将字符串括起来时,C++ std::cout 打印奇怪的字符[重复]的主要内容,如果未能解决你的问题,请参考以下文章