• c语言之函数指针应用


    c语言之函数指针应用

    1、函数指针与指针函数

      在开始运用函数指针前,我们需要将两个概念即:函数指针与指针函数搞清楚。

    函数指针,指明这个一个函数,但返回值为指针类型,语法格式为:

        类型名* 函数名A(参数列表);

    调用他时,我们可以使用

        类型名* 变量名 = 函数名A(参数列表);

    指针函数,指明这是一个指针,但用指针指向一个函数,语法格式为:

        类型名 (*函数名fun)(参数列表);

     

    调用他时,我们可以使用

     例如存在一个函数

                  类型名 函数名B(参数列表);

                  我们可以使用

    第一种用法

                 fun=&B;

                  (*fun)(参数列表); 

    第二种用法

        fun=B;

        (*fun)(参数列表);

    这两个语句来调用函数B。这样看用指针函数代码还多了,但在大型程序中,如果函数A与函数B的参数类型,返回值类型都相同的情况下,就可以统一利用指针函数fun来调用,编写整洁的代码。

    2、代码例子

    #include<stdio.h>
    
    int add(int a, int b) {
    	return a+b;
    }
    
    int sub(int a, int b) {
    	return a-b;
    }
    
    typedef int (*fun)(int a, int b);
    
    fun globalFun[2]=
    {
    	[0] = add,
    	[1] = sub,
    };
    
    int main() {
    	int first = 5;
    	int second = 10;
    	printf("%d
    ", globalFun[0](first, second));
    	printf("%d
    ", globalFun[1](first, second));
    	return 0;
    }
    

      

     

  • 相关阅读:
    离开学校一年多
    ZOJ Problem Set–1337 Pi
    Old Bill
    ZOJ Problem Set–1382 A Simple Task
    ZOJ Problem Set 2975 Kinds of Fuwas
    ZOJ Problem Set 2952 Find All M^N Please
    Generate Passwords
    Java 数据类型转换之字符串
    ZOJ Problem Set 2987 Misspelling
    Digital Roots
  • 原文地址:https://www.cnblogs.com/grglym/p/11493891.html
Copyright © 2020-2023  润新知