本文主要是介绍指针的浅层理解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
C语言指针基础(个人对于指针的理解)
指针对于初学者是难以理解的,指来指去真的很烦!我参考了各大博主的文章和视频,用通俗易懂的语言给出我自己的理解。(仅供参考)
1.关于指针的定义:
(和之前学的浮点型“用float定义”、整数型“用int定义”类似,指针也有定义自己的一套方法,那就是在变量类型后面加一个*)
比如:
我们想定义一个int型的指针,那就是 int* p;(表示定义了一个int型的指针,用int*完成这一定义,指针名称叫p)
我们想定义一个double型的指针,那就是 double * p;
其他情况和这个同理
2.关于p的理解:
我们都知道int a=5; 表示用a这个“容器”存放了一个数字5,那么指针也和我们之前学过的内容相类似。
当我们定义 int* p之后,我们就可以用这个p“容器”来存放一些东西,只不过这个容器存放的东西不再是数字,而是地址。
例如:int a=5; int* p; p=a;
这样就表示用p这个“容器”来存放a的地址。
3.关于*p的理解
我们在用指针的时候经常能看到 *p这样的表达,那么这个 *p是什么意思呢?
*p的含义就是:“沿着p所指向(存放)的地址找到这个地址所对应的值”
再拿我们上面的那个例子,int a=5; int* p; p=a;
那么这次我再调用 *p所表示的含义就是:沿着p所存放的地址找到这个地址所对应的值,那么在这个例子中p所存放的东西是a的地址,沿着这一地址取出了a的值,也就是5。
4.关于&p的理解
这个较为好理解,指针本身也具有自己的地址,&p的含义就是取指针p本身的地址。
这篇关于指针的浅层理解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!