今天要编写的是有关c语言中的指针相关知识,作为初学者的我简单的学了一下有关指针的知识,目前发表有关基础的指针的含义,后期会再发布一篇详细的指针知识
1.指针含义和格式
含义:指针描述了数据在内存中的位置,标示了一个占据存储空间的实体,在这一段空间起始位置的相对距离值。在 C/C++语言中,指针一般被认为是指针变量,指针变量的内容存储的是其指向的对象的首地址,指向的对象可以是变量(指针变量也是变量),数组,函数等占据存储空间的实体(用大白话所讲“指针”就是用来存放数据地址,或者利用地址寻找到关键信息,并且指针的知识与系统存储空间和数据字符大小有关)
格式 int * pa = &a
* 是解引用操作符,&是取地址符,pa是指针变量
//例如
int a =10;
printf("%p\n",&a);
//这里%p是用来打印地址
例如我给ch一个字符然后我想找到这个字符的地址那么就需要一下操作
或者我给a一个数然后我通过地址找到a来修改a的数值
这里我给把a的地址给了pa,之后我就直接通过*pa来用pa的地址来找到a最后把a修改
2.指针变量的大小
指针变量也是有大小的,那么是不是不同的类型指针的大小也不一样呢?
在这里我们看到不管是什么类型的最后打印出来的字节长度都是8,此时证明了指针的大小是相同的,并且指针大小取决于地址要多大的存储空间,如果你的系统是32位的那么此时打印出来的结果是4,如果你的电脑系统是64位的那么最后的结果就为8,因此指针大小跟地址线的数量有关,地址线跟系统平台(32位,64位)有关