函数指针示例

目录:

代码:

main.c

c 复制代码
#include <stdio.h>
#include <stdlib.h>

int Max(int x, int y);
int Min(int x, int y);

int main(int argc, char**argv)
{
    int x,y;
    scanf("%d",&x);
    scanf("%d",&y);

    int select;
    printf("输入1表示求最小值,2表示最大值\n");
    scanf("%d",&select);
    //定义函数指针
    int (*p)(int, int);
    if(select == 1)
    {
        //最小值
        p = Min;
    }
    else if(select == 2)
    {
        //最大值
        p =Max;
    }
    else
    {
        return -1;
    }
    //查找
    printf("value is %d\n", p(x, y));
}

int Max(int x, int y)
{
    return x > y?x:y;
}
int Min(int x, int y)
{
    return x < y?x:y;
}

Makefile

c 复制代码
main:main.c
	gcc -o $@ $^
	./$@
clean:
	rm main
相关推荐
Alfred king11 小时前
面试150 搜索二维矩阵
线性代数·矩阵·二分查找·数组
Alfred king12 小时前
面试150 IPO
面试·职场和发展·贪心·数组··排序
Alfred king1 天前
面试150 建立四叉树
矩阵··数组·分治
Alfred king4 天前
面试150 环形子数组的最大和
面试·职场和发展·数组·队列·分治
Alfred king23 天前
面试150 生命游戏
leetcode·游戏·面试·数组
Tee xm2 个月前
算法修仙传 第一章 灵根觉醒:数组基础与遍历
java·数据结构·算法·数组·遍历
小学生的信奥之路2 个月前
力扣1991:找到数组的中间位置(前缀和)
数据结构·算法·leetcode·前缀和·数组
Tisfy3 个月前
LeetCode 1550.存在连续三个奇数的数组:遍历
算法·leetcode·题解·数组·遍历
寒山李白3 个月前
JavaSE核心知识点01基础语法01-04(数组)
java·学习·数组
编程火箭车3 个月前
用手机相册教我数组概念——照片分类术[特殊字符][特殊字符]
数据结构·java基础·数组·编程入门·array·数组初始化·照片管理