C 和 C++ 中字符文字类型的区别
在 C++ 中,字符常量的尺寸是 char。在 C 中,字符常量的类型是整数 (int)。因此在 C 中,sizeof(‘a’) 在 32 位架构中为 4,CHAR_BIT 是 8。但 sizeof(char) 在 C 和 C++ 中都是一个字节。
示例
#include<stdio.h> main() { printf("%d", sizeof('a')); }
输出
4
示例
#include<iostream> using namespace std; main() { cout << sizeof('a'); }
输出
1
在这两种情况下我们所做的是相同的。但在 C 中,sizeof(‘a’) 返回 4,因为它被视为整数。但在 C++ 中,它返回 1。它被视为字符。
广告