• 指向函数的指针


    指向函数的指针变量的一般形式为:
    数据类型   (*指针变量名)(函数参数表列);
    如:  int (*p)(int ,int );
    1、int (*p)(int ,int );表示定义一个指向函数的指针变量p,它不是固定只能指向某一个函数。在一个程序中,一个指针变量可以先后指向同类型的不同函数。
    2、给函数指针赋值时,只须给出函数名而不必给出参数。
    如: p=max;如果写成 p=max(a,b); 是将函数max(a,b);所得到的函数值赋给p,而不是将函数入口赋给p
    3、用函数指针变量调用函数时,只须将(*p)代替函数名即可。如: c=(*p)(a,b);
    4、指向函数的指针变量,像p+n、p++、p--等运算是无意义的。
     
    代码:
    输入两个整数,然后用户选择1或2,选1输出较大值,选2输出较小值。
    程序代码:
    #include<stdio.h>
    void main()
    {
        int max(int ,int );
        int min(int ,int );
        int (*p)(int ,int );
        int a,b,c,n;

        printf("please enter a and b:");
        scanf("%d%d",&a,&b);
        printf("please choose 1 or 2:");
        scanf("%d",&n);

        if(n==1)
            p=max;
        else if(n==2)
            p=min;

        c=(*p)(a,b);
        printf("a=%d,b=%d,",a,b);

        if(n==1)
            printf("max=%d ",c);
        else
            printf("min=%d ",c);
    }


    int max(int a,int b)
    {
        return a>b?a:b;
    }

    int min(int a,int b)
    {
        return a<b?a:b;
    }
     

    运行结果:

     

     

     
    实用价值在于在应用程序中常用菜单提示输出一个数字,然后根据不同值执行不同的功能,就是用此法。
  • 相关阅读:
    Js定义一个表单并提交
    jQuery插件3种类型
    Jquery.extend()和jQuery.fn.extend(object);
    maven 依赖调解
    DOS 查看端口占用,Kill线程
    git 笔记
    mongodb添加登陆验证
    react 使用fortawesome字体图标
    redux小结
    MDM-Object.fn 一些实践与理解
  • 原文地址:https://www.cnblogs.com/vitah/p/4605513.html
Copyright © 2020-2023  润新知