a) 一个整型数(An integer)
b) 一个指向整型数的指针(A pointer to an integer)
c) 一个指向指针的的指针,它指向的指针是指向一个整型数(A pointer to a pointer
to an integer)
d) 一个有 10 个整型数的数组(An array of 10 integers)
e) 一个有 10 个指针的数组,该指针是指向一个整型数的(An array of 10 pointers to
integers)
f) 一个指向有 10 个整型数数组的指针(A pointer to an array of 10 integers)
g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数(A pointer to a
function that takes an integer as an argument and returns an integer)
h) 一个有 10 个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个
整型数( An array of ten pointers to functions that take an integer
argument and return an integer )
答案是:
a) int a; // An integer
b) int *a; // A pointer to an integer
c) int **a; // A pointer to a pointer to an integer
d) int a[10]; // An array of 10 integers
e) int *a[10]; // An array of 10 pointers to integers
f) int (*a)[10]; // A pointer to an array of 10 integers
g) int (*a)(int); // A pointer to a function a that takes an integer argument and
returns an integer
h) int (*a[10])(int); // An array of 10 pointers to functions that take an integer
argument and return an integer
int *p[n];指针数组,每个元素均为指向整型数据的指针。
int (*p)[n]; 为指向一维数组的指针,这个一维数组有 n 个整型数据。
int *p();函数带回指针,指针指向返回的值。--指针函数
int (*p)();为指向函数的指针。--函数指针
思考:理解时,可以把()看做[]