首页 > 编程语言 > 详细

C语言之指针

时间:2015-10-21 12:07:32      阅读:289      评论:0      收藏:0      [点我收藏+]

内存只不过是一个存放数据的空间,你可以想象成一个大的旅馆里面,有很多小房间,每个小房间里都可以放一些数据,电脑就是你的工人,有一天你要存入一些数据,你说“int a = 1”,工人就找了一个空的房间,把东西放进去,并给那个房间取了个别名a,为什么叫别名为a,因为那个房间号很长很长,有10几位数那么长,所以给它一个简单易记得名字。问题来了,如果你兴趣来潮的想要知道那个房间号呢?&a工人就能帮你找到。

1 int main()
2 {
3 int a=39;
4 printf(“%d\n”,a);    //别名
5 printf(“%d\n”, &a);  //房间号
6 }

快点试试吧,看看第二句输出了什么。

 

有一个人叫a,另外一个人叫pa,a是城里人,pa是原始人,a住在一个叫a的房间里,里面放着生活用品‘10’,pa住进来了(pa = &a),他说这个a房间也属于我,你叫这个房间a我不管,我就叫他pa,现在起这个房间有两个名字了。pa不认识‘10’,pa想把‘10’换了,又不可能说:“我要把那个10换成20(10=20)X”,所以他只能这么说“我要把这个房间里的东西换成20(*pa = 20)

1 void main()
2 {
3     int *pa;  //char也行
4     int a = 10;
5     pa = &a;
6     *pa = 20;
7     printf("%d\n",a);
8 }

能看出a最后输出的是什么吗?

不要复制张贴打一遍,或许你就容易懂了。

 

不对之处请点出

持续更新中。

 

C语言之指针

原文:http://www.cnblogs.com/zdfbk/p/4897106.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!