C语言指针函数和函数指针

一、.指针函数

1.指针函数是指带指针的函数,即本质是一个函数。函数的返回类型是一种类型的指针。比如:

int *fun(int a,int b)
{
        
}

它是一个指针函数,函数的返回类型是一个int型的指针。

#include<stdio.h>
#include<Windows.h>
int *fun(int x,int y)
{
	return x>y?&x:&y;//返回大的数的地址
}
int main()
{
	int a,b,*p;
	scanf("%d %d",&a,&b);
	p=fun(a,b);//用一个int型的指针来接收fun函数的返回值,一个地址
	printf("the max is:%d\n",*p);//通过返回的地址输出大的数
	system("pause");
	return 0;
}

二、函数指针

1.函数指针是指向函数的指针变量,即本质是一个指针变量。比如,定义一个函数指针:

int (*p)(int x,int y);
#include<stdio.h>
#include<Windows.h>
int func(int x,int y)
{
	return x>y?x:y;
}
int main()
{
	int a,b;
	int (*p)(int x,int y);//定义函数指针,该指针指向一个int型且具有两个参数的函数
	p=func;//将该函数的地址赋给指针p
	scanf("%d %d",&a,&b);
	printf("the max is :%d\n",(*p)(a,b));//用括号整体把*p括起来调用函数并输出
	system("pause");
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值