C语言中通过函数指针调用函数
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 一、函数指针P调用函数max
- 二、函数中的形参和实参
- 1.形参
- 2.实参
- 3.举例
提示:以下是本篇文章正文内容,下面案例可供参考
一、函数指针P调用函数max
#include <stdio.h>
void main()
{int max(int x, int y);int (*p)();int x, y, z;p = max;printf("请输入两个数:\n");scanf("%d %d", &x, &y);z = (*p)(x, y);printf("max=%d", z);
}
int max(int a, int b)
{if (a > b)return a;elsereturn b;
}
运行结果为:
请输入两个数:
22 56
max=56
二、函数中的形参和实参
1.形参
形参的作用:
- 形参是定义函数时在括号里定义的变量,它只是申明用的,是没有值的。
- 形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。
形参的特点:
- 变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此, 形参只有在函数内部有效。函数调用结束返回主调函数后则不能再使用该形参变量。
2.实参
实参的作用:
- 实参是调用函数时 传给形参的值,是有值的。实参是形参被具体赋值之后的值,参加实际的运算,有实际作用。
- 实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值,以便把这些值传送给形参。
实参的作用:
- 实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们 都必须具有确定的值,以便把这些值传送给形参。因此应预先用赋值,输入等办法使实参获得确定值。
3.举例
#include <stdio.h>void test(int* p) //此处P为形参
{int x = 4;p = &x;printf("在函数中p中的地址为: % d\n", p);
}
int main()
{int e = 3;int* p = &e; //此处P为实参printf("main:p中存的地址为:%d\n", p);test(p);printf("main:p中存的地址为: % d\n", p);return 0;
}
运行结果为:
main:p中存的地址为:14416364
在函数中p中的地址为: 14416120
main:p中存的地址为: 14416364
C语言中通过函数指针调用函数相关推荐
- C/C++ 函数指针调用函数
01 //C/C++ 函数指针调用函数 02 #include<iostream> 03 using namespace std; 04 05 void site1() 06 { 07 ...
- 第16周项目3--用函数指针调用函数(吃饭,睡觉,打豆豆)
/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:刘畅 * 完成日期:2014 年 12 ...
- 如何用函数指针调用函数
先举一个用函数指针调用函数的例子 int Func(int x); /*声明一个函数*/ int (*p) (int x); /*定义一个函数指针*/ p = Func; /*将Func函数的首地址赋 ...
- 通过函数名调用函数和通过函数指针调用函数有什么区别呢?为什么调用函数指针没有直接调用函数效率高?
1.通过函数名调用函数和通过函数指针调用函数有什么区别呢? 首先函数名.函数指针都表示代码段的起始地址. 1)调用函数的时候必须指定函数名,可是当有时候不确定具体调用哪个函数,当某些事件发生后才 ...
- C语言函数指针调用函数
C语言可以定义指针变量指向函数,通过指针来调用函数. 使用: 1.定义函数指针变量: 函数返回值类型 (*指针变量名)(); 2.将已有函数入口赋值给函数指针变量:fnPt = avg; 3.使用指 ...
- C语言——指针函数和函数指针(回调函数)
前言:之前说了很多跟数组和指针相关的东西,这次从模块化编程降低耦合度的角度说下函数和指针的关系. 1. 指针函数 指针函数就是返回指针的函数.函数的返回类型有很多,void,int,char等都是 ...
- 函数指针,函数指针数组,函数返回值为函数指针
函数的名字就是函数的首地址:定义函数指针; int (*p)(int ) p为函数指针变量名字,int 为函数的返回值类型为int型:(int)为函数的形参类型为int型, 注:因为优先级所以 ...
- 函数指针、函数返回指针、const指针、指向const指针,指向const的const指针。
①函数指针 函数指针是指向函数的指针变量. 因而"函数指针"本身首先应是指针变量,只不过该指针变量指向函数.这正如用指针变量可指向整型变量.字符型.数组一样,这里是指向函数.如前所 ...
- C语言中的函数指针、函数的直接/间接调用、C# 委托(自定义委托、内置泛型委托、委托的实例化、委托的一般使用(模板方法、回调方法)、泛型委托、多播委托、同步/异步使用委托)
文章目录 C语言中的函数指针 函数的直接调用与间接调用 Java中没有与委托对应的功能实体 C# 委托 C# 自定义委托类型 C# 内置泛型委托类型 委托的实例化 委托也支持泛型的使用 委托的一般使用 ...
最新文章
- 转载:有关SQL server connection Keep Alive 的FAQ(3)
- c#执行多句oracle,在Oracle命令C#中执行多次插入表命令
- python基础知识面试题-Python 基础面试题总结
- session登录练习使用解决null显示问题
- 农业展会谋定丰收精髓-李加映:中国农民丰收节交易会
- 【忘川风华录】交互负责人:在奇幻和萌趣中探索国风的立体体验
- 网页上的摄影展:等高响应布局实现
- 题解 牛客【「水」悠悠碧波】
- Dao层抽取BaseDao公共方法
- mysql分组统计查询 张三_MySQL 怎样分组查询
- WinCE --- 调试RS485串口
- 审计MySQL 8.0中的分类数据查询
- 面象对象与面象过程内存分区
- javassist官方文档翻译
- 2021年高热度排行前十名进销存管理软件
- 数据结构期末复习速成
- Making Startup Magic
- 学校教务系统服务器配置,校园小程序: 基于强智教务系统的校园服务类小程序--多校版本(默认 山科)使用云开发...
- WEB编程开发常用的代码[转]
- 转载 | 身份访问与管理(IAM)的定义、应用与提供商