#include<stdio.h>
void main(){
int a = 123;
printf("%d",sizeof(a));
}
上述代码在windows中输出为4
#include<stdio.h>
int main(){
int a = 123;
printf("%d",sizeof(a));
return 0;
}
上述代码在64位redhat输出为8
为了解决跨平台整数移植问题,可采用下述方案
#include<stdio.h>
#include<stdint.h>
void main(){
int32_t a = 123;
printf("%d",sizeof(a));
}
引入stdint.h头文件解决此问题,需支持C99的编译器