做游戏网站教程,企业seo案例,设计门户网站,学软件工程专业后悔了1.前言 在学习C语言的时候#xff0c;我们会经常接触一个概念#xff0c;指针和地址#xff0c;关于这两个概念很多人并不能理解地十分透彻#xff0c;接下来我将详细介绍一下这两者的概念
2.地址 我们知道计算机的上CPU#xff08;中央处理器#xff09;在处理数据的时…1.前言 在学习C语言的时候我们会经常接触一个概念指针和地址关于这两个概念很多人并不能理解地十分透彻接下来我将详细介绍一下这两者的概念
2.地址 我们知道计算机的上CPU中央处理器在处理数据的时候需要的数据是在内存中读取的处理后的数据也会放回内存中而内存空间则会进行高效管理将内存空间划分为一个个的内存单元而每个内存单元的大小取一个字节。 而一个字节Byte等于八个比特位bit也就是说一个字节可以存储八个0和1这样的数据。 而我们去查找这些储存在内存上的数据的时候自然是不能从整个内存里面挨个查找的因为那样效率肯定会十分低下则这个时候就会用地址去查找了。而地址就类似于你有一个快递它存放在了菜鸟驿站到了菜鸟驿站你是需要向驿站的工作人员提供取件码然后工作人员根据你提供的取件码找到了你的快递。 但还有另外一种情况你去了菜鸟驿站并不知道你的取件码是多少这时候工作人员会向你索要你的手机尾号通过查询就得知了你的快递的取件码这样同样也达到了取到了你的快递的效果。 这样我们通过上述的概念理解我们对C语言中取地址符号“”的理解也就不难了。
举例
#includestdio.h
int main()
{int a0;scanf(%d,a);//即为工作人员通过你的手机尾号查你的取件码的动作a即为工作人员查到了你的取件码的这样的一个结果。printf(%d\n,a);//将你的快递拿出来给你看return 0;
} 在上述的代码中a产生了a的地址我们可不可以把它存起来呢答案是肯定的。
3.指针 其实在C语言中我们可以将内存单元编号地址和指针看作是等价的。但是常说的指针并不是指针而是指针变量。假如说我们定义了一个int类型的变量a通过取地址的操作我们知道了地址为0x009FFD30这时我们想要把它存起来那就是存储在指针变量中的。指针变量也是⼀种变量这种变量就是用来存放地址的存放在指针变量中的值都会理解为地址。
#includestdio.h
int main()
{int a0;int * paa;//取出a的地址并存储到指针变量pa中return 0;
} 在上述的代码中我们看到的pa的类型是int*这里pa左边写的是int**说明pa是指针变量前面的int是在说明pa指向的整型类型的对象。
图解 4.解引用操作符 我们将地址保存起来在后面是要使用的那怎么使用呢 在现实生活中我们通过了地址找到了一个房间在房间里面可以拿去或者存放物品。通过这个逻辑我们理解C语言中的指针我们只要拿到了地址指针就可以通过地址指针找到地址指针指向的对象在这里就可以引入一个操作符叫做解引用操作符*。 #includestdio.h
int main()
{int a0;int * paa;*pa-9;return 0;
}
在上面的代码中第6行就使用了解引用操作符*pa的意思就是通过pa中存放的地址找到指向空间其实*pa就是a变量了所以*pa0这个操作符是把a改成了0。 5.总结 以上则是关于指针的基本用法的简单介绍了在C语言中指针扮演者十分重要的作用内容也是十分的繁杂这里就不再一一赘述了。