c++ - 在 std::cout 中使用单引号打印字符串实际上打印的是数字

标签 c++

<分区>

#include <iostream>

int main() {
  std::cout << 'hello';
  return 0;
}

这个程序的输出是:

1701604463

我想知道为什么它实际上运行了,尽管编译器给出了一条警告消息:character constant too long for its type

这些数字到底是什么意思,它们是垃圾数字吗?

最佳答案

multicharacter literal其类型为 int

Multicharacter literal, e.g. 'AB', has type int and implementation-defined value.

关于c++ - 在 std::cout 中使用单引号打印字符串实际上打印的是数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58294540/

相关文章:

c++ - 函数返回的 boost::multi_array_ref 安全吗?

c++ - C++中Python中有没有类似于help()的函数

c++ - QTableView clearSelection 失败,出现 ASSERT : "!isEmpty()" in file/usr/include/qt4/QtCore/qlist. h,第 282 行

c++ - 采用模板非类型模板参数的函数模板

c++ - 对已定义方法的 undefined reference , header 中的声明与源匹配

c++ - 如何在 Windows 操作系统上安装 Libigl 实验室?

c++ - 初始化 PhysFS 时出现问题

c++ - std::aligned_storage 中的新位置?

c++ - 在 C++ 中,一个类是否可以包含指向在构造函数中初始化的同一类的指针?

c++ - 读取eax寄存器