大佬们帮我看看
大佬们好我按照书上的运算后的结果和上的不一致
#include<stdio.h>
int main(void)
{
printf("int=%d\n", sizeof(int));
printf("shourt int=%d\n", sizeof(short));
printf("long int=%d\n", sizeof(long));
printf("long long int=%d\n", sizeof(long long));
printf("char=%d\n", sizeof(char));
printf("_Bool=%d\n", sizeof(_Bool));
printf("float=%d\n", sizeof(float));
printf("double=%d\n", sizeof(double));
printf("long double=%d\n", sizeof(long double));
return 0;
}
long double
书上的结果是12
我的结果是8
long double每个平台的大小不一样,很正常
https://blog.csdn.net/do2jiang/article/details/4548340?locationNum=3&fps=1 本帖最后由 ExiaGN001 于 2022-8-26 23:21 编辑
现在x64架构的和以前x86架构的不一样。
这些表达式的值在x64和x86中有如下对应。
x64 x86
int 4 2
short 2 2
long 4 4
long long 8 8
char 1 1
bool 1 1
_Bool 1 1
float 4 2
double 8 4
long double16 8
页:
[1]