当我用单引号将字符串括起来时,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 打印奇怪的字符[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Perl eval EXPR 用单引号或双引号括起来

sql中双引号用在哪些范围?

Python数据类型之字符串及其转义

Python数据类型之字符串及其转义

需要正则表达式用单引号或双引号解析关键字='值'

Python-注释和字符串