C语言中在定义变量时使用 * 号是为了表明该变量为指针
指针有分一级指针,二级指针,三级指针等,有几个 * 号就相当于是几级指针
首先你要理解指针就是内存中的地址你要使用地址的时候就直接用指针p,你要用地址中的值得时候就得加上*,你要想求值的地址就要用&。比如说
int *p,那么p是存放这个int型数字的地址,*p就是这个地址上的数字,那么就是这个值了。
int n,n是数字,&n就是存放n的地址了(地址的意思就是内存上的片段编码);
这样说够明白了吧
定义,声明的时候,必须写如
int * ip
char * cp
double *dp=NULL
在使用的时候,*号并不是指针的标志,而是一种运算符号,意思是解应用。
int a=5
int b=3
int * ip=&a
那么,直接使用ip,ip是这个地址,是一个指针,比如ip=&b,那么ip就指向了b。
而使用*ip,是对ip进行解引用计算,也就是取出ip指向的内容,*ip的值是5(a的值),*ip=b,是对ip指向的地址赋值,此时你输出a,得到的值是3
希望能帮到你,不懂再问我
***********************************************
一个指针,指向一个数据,也就是间接地使用了这个数据,我们可以称之为引用。
直接使用ip,就是间接使用(得到地址),通过地址解析出原始数据,可以称之为解引用,所以*ip就得到了ip指向的数据。
可能叫做 "地址解析"之类的你更容易明白吧