目录

  • 一.函数指针和指针函数声明的区别

    • 1.函数指针
    • 2.指针函数
  • 二.函数指针和指针函数调用的区别
    • 1.函数指针的调用
    • 2.指针函数的调用
  • 三.猜你喜欢

零基础 Python 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门

一.函数指针和指针函数声明的区别

1.函数指针

函数指针,其本质是一个指针,指向的是一个函数的地址。

基本声明形式:返回数据类型 + (*函数名) + (变量类型 1,…);

//返回int类型的函数指针
int (*fun) (int);

2.指针函数

指针函数,即返回指针的函数,其本质是一个函数,而该函数的返回值是一个指针。

基本声明形式:返回数据类型 + * + 函数名 + (变量类型 1,…);

//返回int类型指针的指针函数
int* fun(int x,int y);

二.函数指针和指针函数调用的区别

1.函数指针的调用

/******************************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:C语言教程 - C语言 函数指针和指针函数区别
//@Time:2021/06/24 08:00
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/******************************************************************************************/#include<stdio.h>
int (*fun) (int,int);           //声明函数指针
int add(int x,int y)
{return x + y;
}
int main()
{fun = &add;                 //fun函数指针指向add函数printf("%d \n",fun(3,5));printf("%d \n",(*fun)(4,2));return 0;
}
/*
输出:
8
6
*/

需要注意得是:函数指针的参数列表要和函数指针指向的函数的参数列表一致!

2.指针函数的调用

/******************************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:C语言教程 - C语言 函数指针和指针函数区别
//@Time:2021/06/24 08:00
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/******************************************************************************************/#include<stdio.h>
int* fun1(int* x)    //传入指针
{int* tmp = x;     //指针tmp指向xreturn tmp;       //返回tmp指向的地址
}
int fun2(int* x)    //传入指针
{return *x;       //返回x指向的地址对应的值
}
int main()
{int b = 2;int* p = &b;   //p指向b的地址//调用常规函数printf("func1:%d\n",*fun1(p));//输出p指向的地址的值//调用指针函数printf("func2:%d\n",fun2(p));//输出p指向的地址的值return 0;
}
/*
输出:
func1:2
func2:2
*/

函数指针和指针函数区别:函数指针是返回指针,指针函数是一个函数,重点看最后两个字即可!!!

三.猜你喜欢

  1. C 语言逻辑运算符
  2. C 语言三目运算符
  3. C 语言逗号表达式
  4. C 语言 sizeof 和 strlen 函数区别
  5. C 语言 strcpy 和 strcpy_s 函数区别
  6. C 语言 memcpy 和 memcpy_s 区别
  7. C 语言 数组定义和使用
  8. C 语言 数组遍历
  9. C 语言 数组下标越界
  10. C 语言 数组内存溢出
  11. C 语言 数组下标越界和内存溢出区别
  12. C 语言 二维数组定义和使用
  13. C 语言 二维数组行数和列数计算
  14. C 语言 指针声明和定义
  15. C 语言 指针 p++ / p–
  16. C 语言 p++/§++/_(p++)/_p++
  17. C 语言 使用指针遍历数组
  18. C 语言 指针和数组区别
  19. C 语言 数组指针
  20. C 语言 指针数组
  21. C 语言 指针数组和数组指针区别
  22. C 语言 空指针 NULL
  23. C 语言 void 指针
  24. C 语言 野指针
  25. C 语言 函数值传递和址传递
  26. C 语言 函数缺省参数
  27. C 语言 函数不定长参数
  28. C 语言 函数指针
  29. C 语言 指针函数
  30. C 语言 函数指针和指针函数区别

未经允许不得转载:猿说编程 » C 语言 函数指针和指针函数区别

C语言 函数指针和指针函数区别 - C语言零基础入门教程相关推荐

  1. C语言 const 修饰函数参数 - C语言零基础入门教程

    C语言 const 修饰函数参数 - C语言零基础入门教程 目录 一.const 简介 1.const 修饰变量 2.const 修饰指针 3.const 修饰在函数名前面 4.const 修饰在函数 ...

  2. C语言 函数指针 - C语言零基础入门教程

    目录 一.函数指针简介 1.常规函数声明 2.函数指针声明 二.函数指针实战 三.猜你喜欢 零基础 Python 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 一.函数指 ...

  3. C语言 vprintf 函数和 printf 函数区别 - C语言零基础入门教程

    目录 一.vprintf 函数和 printf 函数声明简介 1.printf 函数声明 2.vprintf 函数声明 二.vprintf 函数和 printf 函数使用 三.猜你喜欢 零基础 C/C ...

  4. C语言 指针数组和数组指针区别 - C语言零基础入门教程

    目录 一.简介 1.数组 2.指针 3.指针和数组区别 二.指针数组和数组指针区别 1.指针数组 2.数组指针 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> ...

  5. C语言 指针和数组区别 - C语言零基础入门教程

    目录 一.前言 二.指针和数组区别 1.通过 sizeof 获取大小 a.计算数组大小 b.计算指针大小 2.指针和数组赋值方式不同 a.指针赋值 b.数组赋值 3.指针是指针变量,数组是指针常量 三 ...

  6. C语言 memcpy 和 strcpy 函数区别 - C语言零基础入门教程

    目录 一.memcpy 函数/strcpy 函数简介 二.memcpy 函数/strcpy 函数实战 1.strcpy 函数属于字符串拷贝 2.memcpy 函数属于内存拷贝 三.猜你喜欢 零基础 C ...

  7. C/C++ _wcsupr_s 函数 – unicode 字符串小写转大写 - C语言零基础入门教程

    目录 一._wcsupr_s 函数简介 二._wcsupr_s 函数实战 三.注意问题 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 零 ...

  8. C/C++ _wcslwr_s 函数 – unicode 字符串大写转小写 - C语言零基础入门教程

    目录 一._wcslwr_s 函数简介 二._wcslwr_s 函数实战 三.注意问题 四.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 零 ...

  9. C/C++ _strupr_s 函数 – 字符串小写转大写 - C语言零基础入门教程

    目录 一._strupr_s 函数简介 二._strupr_s 函数实战 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 零基础 C/C+ ...

最新文章

  1. 一、javaSE (二十三)多线程
  2. 程序员效率低下的35个坏习惯
  3. 产品经理提升修炼的方法
  4. 智能算法把奥巴马识别成白人,AI也学会歧视了?
  5. 【JSON】JSON入门详解(二)
  6. 4.2 One-Shot 学习
  7. iOS底层探索之多线程(十六)——锁分析(NSLock、NSCondtion、NSRecursiveLock、NSCondition)
  8. 免费代理ip地址(部分验证过,可使用)
  9. 药方的量化方法笔记(学习与尝试):第一回 中药材数据库的建立 归经的统计 药方归经和功效的量化拆解
  10. html实现表格分页显示,js表格分页实现代码
  11. PMP学习笔记 第5章 项目范围管理
  12. 【测试】转行软件测试没有项目经历怎么办
  13. python南京招聘现状_岗位招聘情况分析之---Python
  14. em模型补缺失值_缺失值的四种处理方法
  15. Kryo官方文档-中文翻译
  16. (十四)单词之各动词讲解
  17. 物理学的各种诡异现象
  18. 使用js修改图片像素颜色并保存
  19. php程序设置ip黑名单,网站访客IP黑名单源码有效屏蔽ip(PHP实现,CC防火墙)
  20. 如何将白鹭引擎开发的游戏通过Egret Native发布到 GooglePlay平台

热门文章

  1. Azkaban业务流程如何转化为DataWorks业务流程
  2. 你女朋友在买买买时,程序员小哥在干嘛?
  3. 多角度分析平台即服务?PaaS的类型和用例
  4. 配置MaxCompute任务消费监控告警,避免资源过度消费
  5. 解密 云HBase 冷热分离技术原理
  6. flutter在2019年会有怎样的表现?
  7. 阿里云OCR证件识别商业化发布,减少人工审核误差节省成本
  8. 如何利用秒级监控进行mongodb故障排查
  9. 为何你的 SaaS 想法总是失败?没想清楚这 4 个原因可能会继续失败!
  10. 十年云计算大爆发,微软正在摧毁其它竞争对手