指针是C语言的灵魂!

C语言的指针给我们提供了操作硬件的捷径,指针的用处真的很强大。看下面几个声明,看各自声明了什么。

int (*foo())();
int (*foo1())[];
int (*foo2[])[];

1. int (*foo())();—首先看foo(),代表foo是一个函数,其他都是返回值部分了,继而int (*函数)(void),这样就代表返回一个函数指针,该函数的参数列表为空
2. int (*foo())[];—同样看foo(),代表是一个函数,参数列表为空,其他都是返回值部分了,int (*函数)[]这样就类似于一个数组指针的声明int (*a)[],所以这是返回一个数组指针。
3. int (*foo2[])[];—先看括号里面的,*foo2[],声明的是一个指针数组,在看外面是该数组中的元素是指向什么,发现[],则代表元素是指向一个数组的。

想详细了解指针,可以去看看这篇文章,链接:http://hi.baidu.com/xun1573/blog/item/ec18e8d4834b4002a18bb7a3.html

来说两句吧

在评论中,你可以使用以下标签: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>