C++显示"123",输出3224115(使用 cout)
C++ shows '123', 3224115 in output (using cout)
这是我的C++作业,请帮助我。(我已经用谷歌搜索了一下,什么也没找到)
int main()
{
std::cout<<'123';
getchar();
return 0;
}
在输出中,你会得到3224115。为什么?
改为写入
std::cout << "123";
^ ^
'123'
是具有实现定义的值和类型int
的字符文本。
可以想象以下方式
#include <iostream>
int main()
{
int x = 0x313233;
std::cout << x << std::endl;
return 0;
}
其中0x31
、0x32
、0x33
是字符'1'
、'2'
、'3'
对应的ASCII码。
对于此程序,输出可以是
3224115
引用C标准(第61页)
包含多个整数字符常量的值 字符(例如,
'ab'
),或包含字符或转义序列 不映射到单字节执行字符,是 实现定义。
相关文章:
- 在作为静态成员包含在另一个类中的类的构造函数中使用 cout
- 在 COUT 语句中使用 COUT 调用函数
- 如何在逗号后使用 cout 打印整数值,而无需在逗号后添加额外的零C++?
- 我怎样才能在行尾使用 cout<<"hello world";不使用 ;
- 为什么除非我使用 cout,否则我的值不正确?
- C++代码停止工作错误使用cout内部函数
- 如何使用cout从C到C++写g或G数?
- 如果我想使用 cout 为我的函数提供任何输入......我该如何给出
- 在 CPP 中使用 cout 的重复输出
- 使用 cout 运算符重载字符串
- 在 c++ 中使用 cout.precision() 的奇怪输出
- 我想使用 "cout" 命令慢慢打印文本,但我真的找不到任何解决方案
- 如何使用 cout 显示类中类的值?
- 输出使用 cout 转换为 ASCII 的文本时输出格式不正确,C++
- 如何在C++地图中使用cout探测特定值
- 分段错误,当使用 cmake 编译而不使用 cout 编译时
- 使用 c++ 更早地使用 cout 摆脱 while 循环
- 如何使用 cout 将文本右对齐
- 无法使用Ostream打印,但可以使用COUT打印
- 仅在我退出应用程序后,使用Cout.write()函数在控制台上打印字符串