c语言 用指针检测double和int两种数据类型在本机上所占用字节的大小

c语言
用指针检测double和int两种数据类型在本机上所占用字节的大小,并与sizeof输出的结果作比较,在屏幕上输出结果。

申请两个数组
double a[2];
int b[2];
double *p=&a[1];
int *q=&b[1];
用sizeof(double)==(p-a)*sizeof(double)来判断
指针相减结果是指针所指结构之间的距离,所以还要*sizeof(double)。
当然你也可以直接用printf(“%d\n%d”,p,a);来观察两个指针的字节距离
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-05-19
转成 cahr[] 再检测追问

不好意思,初学者不懂。
方便的话劳驾给份源程序参考参考?
多谢哈!

追答

int n=-1;

char *p=&n;

再判断p长度,直到0,就是位数。

------------------

能使用sizeof,还会出这样的题目吗。

相似回答