在C ++中,为什么char类型的打印枚举打印为ASCII代码?

时间:2015-04-12 00:55:51

标签: c++ enums char ascii

例如,在此代码中:

#include <iostream>

int main()
{
    enum:char
    { a = 'a', b = 'b', c = 'c', NEWLINE = '\n' };

    std::cout << a << b << c << NEWLINE;
    return 0;
}

abcNEWLINE打印为ASCII码。

我正在学习C ++,到目前为止,我完全理解我所研究的一切。我知道枚举类型包含常量整数值,但我没想到char类型的值会显示为一个整数值(至少不需要显式转换它)。

我很好奇为什么会出现这种情况?我无法找到原因发生的原因。

0 个答案:

没有答案