A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© snowimba 中级黑马   /  2015-10-12 20:32  /  816 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1、函数指针:
        一个函数总是占用一段连续的内存区,函数名就是该函数所占存储区的首地址;
        把指向函数的指针变量称为:函数指针变量;
       
2、函数指针定义方法:
                返回值类型 (*变量名)(函数的参数);
                #include <stdio.h>
               
                int sum(int a,int b){
                    return a>b?a:b;
                }
               
                int main(int argc, const char * argv[]) {
                    // insert code here...
                    // 可以不写形参名;
                    int (*p)(int a,int b);//定义函数指针;
                    p = sum;//初始化
                    printf("Hello, World!\n");
                    return 0;
                }
               
               
3、函数指针的使用:
        #include <stdio.h>
       
        int sum(int a,int b){
            return a>b?a:b;
        }
        int main(int argc, const char * argv[]) {
            // 可以不写形参名;
            int (*p)(int,int);
            p = sum;
            printf("%d\n",p(2,3));
            return 0;
        }
       
                可以随意改变指向;可以减少函数改动;可以写分支函数,
                函数指针不能进行算术运算,地址移动没意义;
                函数指针是间接调用;
               
               
               

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马