例如:int*GetDate();int*aaa(int,int);函数返回的是一个地址值,经常使用在返回数组的某一元素地址上。

在一个程序中,指针变量p可以先后指向不同的函数,但一个函数不能赋给一个不一致的函数指针(即不能让一个函数指针指向与其类型不一致的函数。

主函数中的第7行是个条件语句,其语义是,如输入为负数(i<0)则中止程序运行退出程序。

其一般定义形式如下:**类型名*****函数名**(**函数参数表列**);其中,后缀运算符括号()表示这是一个函数,其前缀运算符星号*表示此函数为指针型函数,其函数值为指针,即它带回来的值的类型为指针,当调用这个函数后,将得到一个指向返回值为…的指针(地址),**类型名**表示函数返回的指针指向的类型。

函数指针大家了解一下就行了,用得不多,但一定要认识它。

函数返回值必须用同类型的指针变量来接受,也就是说,指针函数一定有函数返回值,而且,在主调函数中,函数返回值必须赋给同类型的指针变量。

今天这里只讲两个相对简单的,其实上面说那些太复杂的东西也真的很少用,即便是用了理解起来很麻烦,所以莫不如先深刻理解这两个比较容易的,并且项目中比较常用到。

讲解到这里,相信你已经明白了。

这里fun1不是什么函数名,而是一个指针变量,它指向一个函数。

不能用*(p+1)来表示函数的下一条指令。

Add your comment