A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 奔波霸儿 中级黑马   /  2015-11-11 19:54  /  1012 人查看  /  10 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

#include <stdio.h>
int main(int argc, char * argv[])
{
       
   int num;

   num = 10;

        int *p = &num;
   printf("第1个字节地址为:%p,值为:%d\n",p,*p);
   printf("第2个字节地址为:%p,值为:%d\n",p+1,*(p+1));
        printf("第3个字节地址为:%p,值为:%d\n",p+2,*(p+2));
   printf("第4个字节地址为:%p,值为:%d\n",p+3,*(p+3));
        getchar();
        return 0;
}

10 个回复

倒序浏览
自学能写出这样的   棒棒的
回复 使用道具 举报
坚持自学,必能突破。正在学习指针、
回复 使用道具 举报
默默点赞!!!!!!!!!!!!!!!!!!!
回复 使用道具 举报
你这后面的指针指向的地址不是第234个字节的地址,指针平移后直接向后平移了四个字节,你这样写是错的,属于野指针了。
回复 使用道具 举报
你运行过没有?
回复 使用道具 举报
强势围观
回复 使用道具 举报
你定义了一个INT类型的指针。那么这个指针+1就是相隔四位的下一个地址
如果你要看你定义的变量的每一个字节的话 ,使用char类型的指针输出%d即可
回复 使用道具 举报
可以可以
回复 使用道具 举报
围观楼上的
回复 使用道具 举报
int *p 改成char *p   要不然会往下移动四个字节,char类型是移动一个
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马