在C编程语言中,类型字符文字是int,因此sizeof('x')和sizeof(10)之间没有区别。因此,C语言将字符文字视为整数(字符的ASCII)。
让我们考虑以下示例
#include <stdio.h>
int main(){
printf("%d,%d\n",sizeof('x'),sizeof(10));
return 0;
}4,4
输出将为4,4(在32位系统架构上)
在C ++编程语言中,字符文字的类型从int更改为char。这意味着sizeof('x')和sizeof(10)是不同的。
让我们考虑以下示例
#include <iostream>
using namespace std;
int main(){
cout<<sizeof('x')<<","<<sizeof(10)<<endl;
return 0;
}1,4
输出将为1,4(在32位系统架构上)
在C语言中,字符文字是整数类型,因此sizeof('x')将为4;在C ++语言中,字符文字是字符类型,因此sizeof('x')将为1。