读书人

c语言变量内存地址全部显示有关问题

发布时间: 2012-03-26 15:46:56 作者: rapoo

c语言变量内存地址全部显示问题
大家都知道一个int型变量占4个字节,在内存中分配连续的地址,我想将这些地址全部输出。(注意:不是只显示首地址)
显示首地址的我知道:
#include<stdio.h>
int main()
{
int i=6;
printf("i address: %d",&i);
return 0;
}
输出结果为:1245024
各位大虾帮帮忙,如何将地址全部输出?

[解决办法]
int ipos = 0;
for(ipos = 0; ipos < sizeof(i); ipos++)
printf("i address[%d] = %x\n", ipos, (p+ipos));
[解决办法]
楼上正解,还有,你要注意自己的机器存储数据时是按大端存取还是小端存取,方便自己验证结果
[解决办法]

C/C++ code
#include<stdio.h>int main(){    int i=6,j;    char *p = (char *)&i;    for (j=0;j<sizeof(i);j++)    {        printf("i address: %d\n",p+j);    }    return 0;} 

读书人网 >C语言

热点推荐