171031

171031

171031

171031

今天学了指针的一些运用,对于指针函数的调用还是蒙的,准确的说是对函数调用不熟;
今日主要内容就是认识指针的优先级之间的关系,和指针的指向,指针变量的取值,指针与数组之间的取值调用;对二级指针与一级指针认识有些模糊,一级指针指的是一维数组,二级预算符指的是二维数组;(*p)[10]=a[10][10], *p=a[10];

指针进行运算时,要确保指针所指向的内存区域一致
比如 指向不同数组的两个指针,进行运算得到的结果没有意义.

数组指针:
将数组名作为参数传递给函数时,实际上是传递的数组的首地址.

函数的形参可以写成以下形式:
void f(int a[10])
或void f(int a[])
或void f(int *a)

定义的格式: int (*变量名)[数组列数]
int a[10], *p = a;
int b[10][10], (*p2)[10] = a;

如果要传二级指针:
void f(int (*p)[10]);
void f(int a[10][10]);