函数指针与指针函数的区别
来源:互联网 发布:域名生成工具 编辑:程序博客网 时间:2024/06/07 00:37
函数指针与指针函数的区别
指针函数是带指针的函数,本质上是一个函数,函数返回类型是某一类型的指针。其形式一般如下:
类型标识符 *函数名(参数列表)
例如,int *f(x,y),它的意思是声明一个函数f(x,y),该函数返回类型为int型指针。
而函数指针是指向函数的指针变量,即本质是一个指针变量,表示的是一个指针,它指向的是一个函数。其形式一般如下:
类型说明符 (*函数名)(参数)
例如:int (*pf)(int x),它的意思就是声明一个函数指针,而pf=func,则将func函数首地址赋值给指针。
代码示例:
#include <stdio.h>#define NULL 0#define ASGN 1#define MUL 2 int asgn(int *a,int b){return *a = b;}int mul(int *a,int b){return *a*b;}int (*func(int op))(int *,int){switch(op) { case ASGN: return &asgn; case MUL: return &mul; default: return NULL; } return NULL;} int main(){int i = 0xFFFD,j = 0xBEEF;printf("%x\n",func(ASGN)(&i,j));printf("%x\n",func(MUL)(&i,j));printf("%x,%x\n",i,j);return 0;}
输出结果:
beef
8e67a321
beef,beef
阅读全文
0 0
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 指针函数与函数指针的区别
- 关注民生民情——华北水利水电大学“情艺”国情社情调查
- 稀疏表示介绍
- 南阳理工oj 题目116 士兵杀敌(二)树状数组
- 哈希表链地址法解决冲突
- 【自学考试】C++导图概览
- 函数指针与指针函数的区别
- java多线程同步(wait、notify)生产者消费者简单示例
- HTTP 协议
- PHP--规范化的文件上传
- 编写测试用例的方法—— 边界值分析法(学习笔记)
- unity C#脚本开发基础
- AndroidStudio cannot resolve symbol 解决办法
- C语言基础编程之进制转化
- JMS基本概念