#include <stdio.h>
int main () {
double a = 2.5;
double b = 9.5;
printf("%d %d\n",sizeof(a),sizeof(b));
printf("%d %d %d\n",b,(int)a,a);
return 0;
}
8 8
2 2 0
(%d是故意转换的,就是想看看这种转换在printf下的内存运行原理,没什么实际意义,但是就是好奇)
真的懵了,试了各种形式都搞不明白为什么b会变成2,有一个数会没,有人能帮忙看一看吗