c语言第二剑 初识指针(指针的初步理解与分析)

c语言第二剑 初识指针(指针的初步理解与刨析)

1.指针(官方定义)

指针,是C语言中的一个重要概念及其特点,也是掌握C语言比较困难的部分。指针也就是内存地址,指针变量是用来存放内存地址的变量,在同一CPU构架下,不同类型的指针变量所占用的存储单元长度是相同的,而存放数据的变量因数据的类型不同,所占用的存储空间长度也不同。有了指针以后,不仅可以对数据本身,也可以对存储数据的变量地址进行操作。

1.1 自我理解

从官方的定义来看,我们不难知道指针是c语言中的地址,指针同时也是一个变量,那么具有如此之多的属性的他。到底是个什么呢,先来从他的地址属性来看一看。

在这里插入图片描述

我们通过上面的图可以了解到.计算机的指针其实就是我们生活当中的地址。

在现实中,我们可以通过一个地址精确的找到一个人,一栋建筑物等等,而在计算机中,我们则是可以使用指针快速的找到计算机存储的数据。

了解了指针的地址,那么指针同时也是一个变量是什么意思呢。我们用一串代码来了解一下

1.2指针的变量

在这里插入图片描述

我们创建了一个变量a=10;却打印出了a的变量为20;

为什么两个不相干的变量却在某一刻却发生了关联呢,再此之前我们聊一个最近非常火的电视剧的一个剧情

高齐强在想杀人的时候从来不会亲自动手,而是会说:“老莫,我想吃鱼了。”可能有些人会对此有些困扰,这什么牛头不对马嘴的。我们再来说一遍:“高齐强(程序员)说,老莫(*pa),我想吃鱼了(把a的值改成20)。

看到这一刻。大家是不是懂了。a是一个变量,我创建了一个*pa的变量存放了a的地址,在使用*pa找到了a的地址改变了a的变量。所以a的值被改变了。

*pa找到了a的地址改变了a的变量。所以a的值被改变了。

以上就是我对指针的初步了解,如有不足,还请各位大佬批评指正,作为一个初学c语言的学徒,我会秉持着谦虚好学的态度,谢谢所有为我批评指正的大佬,并一一感谢!

猜你喜欢

转载自blog.csdn.net/nanmiao666/article/details/130139574