今日学习了关于指针的知识。指针的定义和定义变量的方式一样,只不过定义条件上加了一个“*”。当指针变量=&变量时,指针中所存错的是对应变量在内存中的地址代码,输出指针变量则会输出对应变量的地址代码,输出*+指针变量才会输出对应变量在内存中存储的具体数值。
指针变量进行+1-1的操作,根据定义指针变量时所设定的数据类型来进行加减操作。int类型4个字节。char类型1个字节。long int类型8个字节。
单独进行加减常量时也是一样的做法。
数值名可以作为整个数组的首地址来使用,指针变量=数值名;
如果变量中数值p=&a 的话,则会输出a的值。(解引用)
数组名:代表整个数值的首地址。
数组名[0]:代表第一行的首地址。
数组名[0[0]:代表二维数组第一个元素。
int *p1; p1=&a a的地址给p1;int **p2;p2=&p1 p1的地址给p2.
解引用行是当前的第一个元素 与*a【0】意思相同。
调用函数时,传递指针是将指针中的地址作为实参,传递给形参,形参定义也需要为指针才能接受地址,
当输出有*时,输出地址对应的数值。没有*输出传递下来的地址。