可能重复:
C/C++中的字符大小('a')
我是C的初学者,对此感到困惑.
C: 我尝试使用"%zu"修饰符在C中打印sizeof('a'),然后输出值4.
C++: 使用cout在C++中打印sizeof('a'),printf(使用上面的格式)都打印了值1.
我认为正确的值应该是1,因为'a'将被视为char.为什么不在C中返回4?这两种语言的操作规模是否都不同?如果是这样,有什么区别,为什么它会返回不同的值?我在两种情况下都使用了gcc编译器.
Bla*_*ack 11
在C中,'a'是一个字符常量,它被视为一个整数,因此你得到一个大小为4,而在C++中它被视为一个char.这是这里的问题的副本:
| 归档时间: |
|
| 查看次数: |
2502 次 |
| 最近记录: |