#include <stdio.h>
char* getWord(char);
char* getWord(char c)
{
switch (c)
{
case 'A':return "Apple";
case'B':return "Banana";
case'C':return "Cat";
case'D':return "Dog";
default:return "None";
}
}
int main1()
{
char input;
printf("请输入一个字母:");
scanf_s("%c", &input);
printf("%s\n", getWord(input));
return 0;
}
//使用指针变量作为函数的返回值,就是指针函数
//不要返回局部变量的指针
//函数指针
#include <stdio.h>
int square(int num);
int square(int num)
{
return num * num;
}
int main2()
{
int num;
int (*fp)(int);
printf("输入一个整数");
scanf_s("%d", &num);
fp = □
printf("%d*%d=%d\n", num, num, (*fp)(num));
return 0;
}
//将函数指针作为参数
#include <stdio.h>
int add(int , int );
int sub(int , int );
int calc(int (*fp)(int , int ), int , int );
int add(int num1, int num2)
{
return num1 + num2;
}
int sub(int num1, int num2)
{
return num1 - num2;
}
int calc(int (*fp)(int num1, int num2), int num1, int num2)
{
return (*fp)(num1, num2);
}
int main3()
{
printf("3+5=%d\n", calc(add, 3, 5));
printf("3-5=%d\n", calc(sub, 3, 5));
return 0;
}
//将函数指针作为返回值
函数指针和指针函数
最新推荐文章于 2024-05-30 21:35:46 发布