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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

#include <stdio.h>

typedef int (*Yunsuan)(int, int);

int sum(int a, int b)
{
    return a + b;
}

int minus(int a, int b)
{
    return a - b;     //5
}
         //   10      5       15
int count(int a, int b, Yunsuan p)
{
    return p(a, b);
}

int main()
{
    int a = sum(minus(10, 5), count(10, 5, sum));
    printf("%d\n", a);
    return 0;

8 个回复

倒序浏览
首先从mian函数开始minus
回复 使用道具 举报
赞赞,赞,好厉害!!!1
回复 使用道具 举报
指向函数的指针
回复 使用道具 举报
首先从mian函数开始minus(10,5)调用int minus(int a,int b)即minus(10,5)=5,同理count(10,5,yansuan p)=15得到的是int a= sum(5,15)继续调用sum即a+b返回给int a.....5+15=20....即打印20!yuansuan p是指针在这里指代sum。。。。。
回复 使用道具 举报
首先从mian函数开始minus(10,5)调用int minus(int a,int b)即minus(10,5)=5,同理count(10,5,yansuan p)=15得到的是int a= sum(5,15)继续调用sum即a+b返回给int a.....5+15=20....即打印20!yuansuan p是指针在这里指代sum。。。。。
回复 使用道具 举报
这是我电脑卡了吗。。。。。不科学
回复 使用道具 举报
  张恒宇 发表于 2015-5-5 22:37
这是我电脑卡了吗。。。。。不科学

感谢感谢,你一说就明白了
回复 使用道具 举报
指向函数的指针 + typedef 知识
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马