程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 函數返回函數指針

函數返回函數指針

編輯:關於C語言

C代碼 
#include <stdio.h> 
 
char *ops[3] = { "sum", "sub", "mul" }; 
 
int sum(int a, int b) 

        return a + b; 

 
int sub(int a, int b) 

        return a - b; 

 
int mul(int a, int b) 

        return a * b; 

 
void show(int opnum) 

        printf("Do the operation:%s\n", ops[opnum]); 

 
int (*operation(int opnum, void (*fun) (int))) (int, int) 

        fun(opnum); 
        switch (opnum) { 
        case 0: 
                return sum; 
                break; 
        case 1: 
                return sub; 
                break; 
        case 2: 
                return mul; 
                break; 
        default: 
                break; 
        } 
 

 
int main(int argc, char *argv[]) 

        int a = 33; 
        int b = 17; 
        printf("Here a=%d, b=%d\n", a, b); 
        printf("\tThe result is :%d\n", operation(0, show) (a, b)); 
        printf("\tThe result is :%d\n", operation(1, show) (a, b)); 
        printf("\tThe result is :%d\n", operation(2, show) (a, b)); 
         
        return 0; 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved