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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 飞扬的青春haha 中级黑马   /  2016-5-12 00:14  /  1823 人查看  /  9 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

       不知不觉来基础班已经10多天了,c语言基础已经差不多上完了,一路过来感慨颇多,收获也很多.刚开始上到指针时也是听的懵懵懂懂的,半知半觉就上完了,被指来指去迷迷糊糊的,后来慢慢的对它有了进一步的加深.
       1 首先指针就是地址,地址就是指针.意思是指指针就是指向变量的地址,从而达到操作变量的作用,定义的时候通过*符号指向变量的地址如int* p1 = *num, 从而达到操作num的作用.然而意思虽然简单,但实际却是很复杂的,涉及到指针数组,函数指针的传递,二级指针,等等,毕竟指针是c语言的灵魂.
       2  关于赋值,一个指针被定义了之后,必须要为其赋值,不然会有很严重的后果,声明后果呢,就是不赋值的话,他就随机指向空间的地址,有可能指向已经定义好的变量,如果只是取其值出来用那还好,如果去更改他的值,那么那个不知的变量也会相应的改变,所以如果不想为其赋值,那就给其赋null,其是一个空值,相当于0.
      3关于2级指针的理解,我是这么想的:如int num = 100;int *p1 = # int ** =p2;首先p1指向num的地址,p2指向p1的地址,那么p1的值应为num的地址,*P1则是p1里寸的地址进行取值,既num的地址,所以等于100,这里解释一下*的作用,它既是作为指针符号所指向变量的地址,也是对所指向的地址进行取值的符号;所以*p2是对p1进行取值,既结果是num的地址,然后**P2就是对num的地址进行取值,结果也是100.
     4 关于指针数组,最有用的是用在传递地址,在函数中用处最大,当建立关系后,即使函数不用返回值,那也可以通过指针数组来达到返回数个值的作用,结构体类型指针亦是.
     5其实主要掌握了指针的本质之后,那就不怕他了,无非就是地址的传递,平时如果迷惑的话可以动动手,画画他们的在内存中的具体活动,希望大家在黑马能得到自己所希望的成长,大家都能考上就业班,为中国的it业做出一份自己的贡献.

评分

参与人数 1黑马币 +5 收起 理由
zmhlnrs + 5 赞一个!

查看全部评分

9 个回复

倒序浏览
学习了。。
回复 使用道具 举报
很详细。
回复 使用道具 举报
不是长颈鹿2 来自手机 中级黑马 2016-5-12 09:39:48
板凳
顶一个。。
回复 使用道具 举报
学习了,总结的很好
回复 使用道具 举报
不错!!!
回复 使用道具 举报

一起学学
回复 使用道具 举报

一起学习,,,,,,
回复 使用道具 举报
不是长颈鹿2 来自手机 中级黑马 2016-5-12 18:07:29
9#
一起学习,存一个
回复 使用道具 举报
总结得不错
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马