学习C语言时让我迷惑的指针,今天一定给你讲明白

指针是什么

通俗易懂的来说指针就是存放了一个值的变量,那个值就是内存地址。

指针的优势以及为什么用指针

如果你想通过函数改变一个变量的值,就得用指针而不能用值传递。还有在很多时候变量,特别是对象的数据量实在太大,程序员就会用指针来做形参,只需要传递一个地址就行,大大提高了效率,因为指针的值是地址,找到了地址,肯定就找到了这里面存放的数据,这一点你得时刻记在心中。

给你仔细说说指针

计算机的里的数据是存放在内存条里面的,我这里说的是数据是和CPU可以直接通信的数据,也就是你当下要运行的数据。要是想要正确的访问这些数据,你就得先找到数据在内存上的位置,我这么给你说吧,内存条你可以理解为一个小区,你要是想要找到你的朋友家,你肯定得知道他家的门牌号吧。那么指针就是那个门牌号了,再次记住一句话,指针存放的是一个地址,而不是你想要得到的那个数据,拥有了门牌号,怎么可能再走错,计算机可是个忠诚的伙伴,只有你给他正确的指令,就一定不会让你失望。
当你创建了一个指针的时候,计算机就会在内存条上给你分配一个位置,可以理解为你在名字为内存条的楼盘买了一个房子,你创建成功的那一刻你就拥有了这个房子的所有权,你可以在这个房子里面放你喜欢的家具,装修成你喜欢的样子。如果要是你朋友想要来你家做客怎么办呢,这个简单啊,告诉他门牌号,让他直接来就好了呀,门牌号就是指针。你的朋友可以通过门牌号进入你家,看到你的家具以及你装修好的房子,好了,现在要切换到计算机里,你同样可以通过指针进入这个内存地址来访问这个地址里面的数据,怎么样,我说清楚了吗?码字不易,都看到这了,给个赞吧。

指针的实现

指针的创建:int * pi; // 表示你创建了一个名为pi,类型为int的指针。 这个类型指的是这个指针里面存放的数据类型,就是你这个房子里面家具的类型。

寻找地址:& 这个符号是地址运算符,在这个符合后面跟上一个变量名,就会给出这个变量的地址,也就是这个房子的门牌号,比如 π 就是表示pi的地址。

查看地址里面的数据:*这个符号是也地址运算符,在这个符号后面跟上一个指针名或者地址时,就会给出存储在这个上面的数据。

猜你喜欢

转载自blog.csdn.net/Lbinggao/article/details/106287435