C语言指针函数和函数指针详解
一、指针函数(int* fun(int,int);)
指针函数是 返回指针的函数 主体是函数,返回值是一个指针
基本声明形式:返回数据类型 + * + 函数名 + (变量类型1,…);
int* fun(int,int); //更加直观,返回值是int* 类型
int * fun(int,int);
int *fun(int,int);
举个例子:
#include<stdio.h>
int* fun(int* x) //传入指针
{int* tmp = x; //指针tmp指向xreturn tmp; //返回tmp指向的地址
}
int main()
{int b = 2; int* p = &b; //p指向b的地址printf("%d",*fun(p));//输出p指向的地址的值return 0;
}
//结果输出:2
二、函数指针(int (*fun) (int);)
函数指针是 指向函数的指针 主体是指针 指向的是一个函数的地址
基本声明形式:返回数据类型 + (*函数名) + (变量类型1,…);
注意 * 和函数名要用括号括起来,否则因为运算符的优先级原因就变成指针函数了
int (*fun) (int);
#include<stdio.h>
int add(int x,int y)
{return x + y;
}
int (*fun) (int,int); //声明函数指针
int main()
{fun = &add; //fun函数指针指向add函数printf("%d ",fun(3,5)); printf("%d",(*fun)(4,2));return 0;
}
//结果输出: 8 ,6
上面的样例中,使用函数指针时使用fun(3,5)和(*fun)(3,5)都可以
C语言指针函数和函数指针详解相关推荐
- c语言sort函数_C语言经典面试题目及答案详解(二)
接着上次来说,C语言经典面试题目及答案详解(一)当中大部分是一些概念和理解的东西 ,今天说一说实践操作,有关c的经典程序. 1.输出9*9口诀.共9行9列,i控制行,j控制列. #include 2. ...
- c语言指针用法及实际应用详解,通俗易懂超详细
c语言指针用法及实际应用详解,通俗易懂超详细! \\\插播一条:文章末尾有惊喜哟~/// 今天给大家来讲解一下指针. 我会由浅到深,最后联合实际应用讲解,让大家学会指针的同时,知道大佬们都用指针来干嘛 ...
- C语言的底层逻辑剖析函数篇(其二),0基础搞定函数,初识函数递归,超详解
这里写目录标题 C语言的底层逻辑剖析函数篇(其二),0基础搞定函数,初识函数递归,超详解 开篇语 函数的调用(嵌套调用和链式访问) 1.嵌套调用 2.函数的链式访问 函数的声明和定义 函数声明和定义分 ...
- c语言 access编程,C语言中access/_access函数的使用实例详解
在Linux下,access函数的声明在文件中,声明如下: int access(const char *pathname, int mode); access函数用来判断指定的文件或目录是否存在(F ...
- 互斥量、条件变量与pthread_cond_wait()函数的使用,详解(二)
互斥量.条件变量与pthread_cond_wait()函数的使用,详解(二) 1.Linux"线程" 进程与线程之间是有区别的,不过linux内核只提供了轻量进程的支持,未实现线 ...
- Delphi Format函数功能及用法详解
DELPHI中Format函数功能及用法详解 DELPHI中Format函数功能及用法详解function Format(const Format: string; const Args: array ...
- python scatter参数详解_Python 中 scatter 函数参数及用法详解
Python 中 scatter 函数参数及用法详解 Python 中 scatter 函数参数及用法详解 这里有新鲜出炉的 Python 教程, 程序狗速度看过来! Python 编程语言 Pyth ...
- python实现排序函数_Python排序函数的使用方法详解
Python排序函数完美体现了Python语言的简洁性,对于List对象,我们可以直接调用sort()函数(这里称为"方法"更合适)来进行排序,而对于其他可迭代对象(如set,di ...
- 在python中使用关键字define定义函数_python自定义函数def的应用详解
这里是三岁,来和大家唠唠自定义函数,这一个神奇的东西,带大家白话玩转自定义函数 自定义函数,编程里面的精髓! def 自定义函数的必要函数:def 使用方法:def 函数名(参数1,参数2,参数-): ...
- 函数assert()详解
函数assert()详解: 断言assert是一个宏,该宏在<assert>中,,当使用assert时候,给他个参数,即一个判读为真的表达式.预处理器产生测试该断言的代码,如果断言不为真, ...
最新文章
- TypeError: __init__() got an unexpected keyword argument ‘ratio‘
- 7.第一次使用java连接mongodb遇到的问题
- python培训班学费-南京Python培训班学费贵吗怎么收费
- spring+quartz定时任务配置---MethodInvokingJobDetailFactoryBean
- SAP MM 盘点单中‘AUn’标记的作用?
- PTA-习题11-2 查找星期 (15 分)-enum
- 收集的一些jQuery (我平常用的少的,但确实挺有效果的)
- nssl1174-阶乘【!基础!数论】
- 线程 协程 python_在Python 的线程中运行协程的方法
- Angular5--viewChild/viewChildren、contentChild/contentChildren使用规则小结
- angularJs模版注入的两种方式
- 7z 7Zip 命令行压缩,解压缩文件
- 使用HTML编写浣溪沙,浣溪沙_巅峰Hacker_新浪博客
- oneDrive登陆界面空白 的解决办法
- 清华大学计算机考研经历,2020清华大学计算机考研经验,相信梦想的力量
- java 匿名邮件_java开发邮件发送(匿名)
- 情缘难舍 愿为一叶扁舟
- spring boot结合FastDFSClient做下载文件注意事项
- Python分析《哈哈哈哈哈》第11期弹幕数据
- 针式打印机步进电机介绍
热门文章
- php+代码行数常量,php - 常量
- KMP算法以及KMP算法的优化
- 计算机会计期末考试试题题量及构成,2021初级会计考试题量及评分标准
- 校运会计算机专业口号,大学运动会口号
- .net中当Thread.Sleep和Application.DoEvents都不好用时
- 视频帧数据用硬件编码输出,仅仅使用FFMPEG将硬件编码出的数据推流RTSP数据后严重花屏且画面卡住不动
- 神经网络训练多少次合适,神经网络训练时间多长
- html中的main标签,html中div标签、section标签和acticle标签三者有啥区别,main和div
- W公司对接奥迪Audi EDI项目案例
- js将字符串按照换行符分隔成数组