函数指针

int (*pf)();    表示pf是一个指向函数入口的指针变量,该函数的返回值(函数值)是整型。

函数指针

int(*p)() int *p()区别

int (*p)()指针函数,说明p是一个指向函数入口的指针变量,该函数的返回值是整型量,(*p)的两边的括号不能少。

int *p()函数指针,说明p是一个指针型函数,其返回值是一个指向整型量的指针,*p两边没有括号。作为函数说明,在括号内最好写入形式参数,这样便于与变量说明区别。

指针数组:

类型说明符 *数组名[数组长度]

 int *pa[3];表示pa是一个指针数组,它有三个数组元素,每个元素值都是一个指针,指向整型变量。

 

指向二维数组的指针的几种表现方式

函数指针

指针的指针

char **p;

p前面有两个*号,相当于*(*p)

 显然*p是指针变量的定义形式,如果没有最前面的*,那就是定义了一个指向字符数据的指针变量。现在它前面又有一个*号,表示指针变量p是指向一个字符指针型变量的。*p就是p所指向的另一个指针

函数指针

main函数的参数

函数指针

argc参数表示了命令行中参数的个数(注意:文件名本身也算一个参数)

argv参数是字符串指针数组,其各元素值为命令行中各字符串(参数均按字符串处理)的首地址。 针数组的长度即为参数个数。