zoukankan      html  css  js  c++  java
  • 深入理解指针函数2

    #include <stdio.h> 
    int func3(int i)
    {
         return i;
    }
    int(*ff(int i))(int x)
    {   printf("%d
    ", i);
        return func3;
    }
    int main()
    {   printf("%d
    ",ff(2)(3));
         return 0;
    }

    申明一个函数指针,并且该函数的返回值也是一个函数指针
    转自:http://www.cnblogs.com/super119/archive/2011/03/26/1996145.html
    func是一个函数指针,该函数返回值是int,没有输入参数;然后主程序中声明了一个函数指针myFuncPointer,
    该函数指针代表的 函 数输入参数是一个int,返回值也是一个函数指针,类型就是func类型的。
    所以我们可以把func2这个函数赋给myFuncPointer这个指针。 interview的题目要的就是myFuncPointer这个指针的声明。
    */
    #include <stdio.h>
     
    typedef int (*func)();  //申明返回值为int,无参的函数指针
     
       int func3()
        {
            printf("In function 3......
    ");
            return 0;
        }
     
        //返回值为func的函数指针
        func func2(int a)
        {
            printf("input parameter is: %d
    ", a);
            return func3;
        }
     
     
        int main()
        {
        //定义一个返回值为func,有一个int类型参数的函数指针
        //这里就是将函数func2的地址赋给myFuncpointer
            func (*myFuncPointer)(int) = func2;
            //定义一个返回值为func类型的变量,并对其赋初值
            func returnvalue = myFuncPointer(1111);
            //定义一个返回值类型为int型的变量
            int func3_return = returnvalue();
            printf("Func3 return value is: %d
    ", func3_return);
            return 0;
        }

    
    
    
     
  • 相关阅读:
    Jquery 学习一
    响应式设计
    微信开发一
    Ajax 技术二
    Ajax 技术一
    SVN版本控制软件
    正则表达式概述
    编写小游戏:贪吃蛇
    POJ 3356 AGTC(DP-最小编辑距离)
    算法模板の字符串处理
  • 原文地址:https://www.cnblogs.com/leijiangtao/p/4175408.html
Copyright © 2011-2022 走看看