提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
在大一上学期,由于学校的通病,对于c语言的指针讲解过于简略,这里是我寒假重学指针的一些感悟,而内容基于 自己对 《c primer plus》 与《 c与指针 》的理解与感悟。
一、指针是什么?
指针就是地址。对于 无论是输出,还是输入,在内存中每一个数据 都会被计算机赋予一个地址。而计算机系统内部也有专门存放 地址的硬件。
其实通俗的说,就类似与,内存中的每个数据都对应着一个地址
其实,我们平时输入一段文字或玩一个游戏,其实是在内存中进行。好比在一个书房,存放书籍的书架和书柜相当于电脑的外存,我们工作的办公桌相当于内存。
通常,我们把要永久保存、大量数据存储在外存上,把一些临时或少量的数据和程序放在内存上。当然,内存的好坏会直接影响电脑的运行速度。
int a = 10;
int *p = &a;
int b = 1;
int *g= &b;
而值得注意的,我们都知道创建变量时,我们会用到关键字 char、 int、 float这些数据类型。而这些数据类型的最大不同便是占用的储存空间(这里一般是指内存)的大小不同。
二、使用方法
1.如何使用指针
int a=10;
int *p;// 一般来说 创建指针变量就需要赋予他地址,不要出现野指针,这是不好的习惯
p=&a;// 这样就完成了指针p的初始化 将p指向了a的地址。
*p=20;// 这个操作我们也称之为 解引用
printf("%d",a);// 通过取值 操作符 通关间接访问修改a里面的值
对于不同的数据类型,我们也得使用不同的指针类型进行操作。
指针类型 决定 解引用时能访问几个字节元素。//这点很重要 在后面的学习中一定要区分开。