当前位置: 首页 > news >正文

上海建设三类人员网站wordpress主题编辑

上海建设三类人员网站,wordpress主题编辑,企业宣传ppt模板,wordpress你没有权限设置本章重点内容: 字符指针指针数组数组指针数组传参和指针传参函数指针函数指针数组指向函数指针数组的指针回调函数指针和数组面试题的解析⚡函数指针 函数指针:指向函数的指针。 通过之前的学习我们知道数组指针中存放的是数组的地址,那么函…

本章重点内容:

  • 字符指针
  • 指针数组
  • 数组指针
  • 数组传参和指针传参
  • 函数指针
  • 函数指针数组
  • 指向函数指针数组的指针
  • 回调函数
  • 指针和数组面试题的解析

⚡函数指针

函数指针:指向函数的指针。 通过之前的学习我们知道数组指针中存放的是数组的地址,那么函数指针存放的是函数的地址吗?这里的答案是肯定的,代码示例如下:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
void test()
{printf("hello world\n");
}
int main()
{printf("%p\n", test);printf("%p\n", &test);return 0;
}

代码运行结果如下:

 我们可以观察到,函数指针确实可以得到函数的地址。C语言中 函数名和&函数名 都是函数地址。接下来,我将为大家说明函数地址怎样存起来,代码示例如下:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int Add(int x, int y)
{return x + y;
}
int main()
{int(*pf)(int, int) = Add; //函数的地址要存起来,就得放在【函数指针变量】中去int ret = (*pf)(3,5); //使用指针进行函数调用//int ret = pf(3,5);//int ret = Add(3,5);//这三种写法都可以成功调用Add函数,其中第一种的*是一个摆设,写与不写都可以,写上是为了理解方便printf("%d\n",ret);return 0;
}

 函数指针的写法说明示例:

下面来阅读两段有趣的代码:

//代码1
(*(void (*)())0)();

想要真正阅读这个代码的意思,分为以下几步:

  1. 将0强制类型转化为void(*)()类型的函数指针
  2. 这就意味着0地址处放着一个函数,函数没有参数,返回类型是void。
  3. 调用0地址处的这个函数。
//代码2
void (*signal(int , void(*)(int)))(int);

代码二的括号内部是一个函数的声明,函数名字是signal,signal函数的第一个参数是 int 类型,第二个是 void(*)(int) 类型的函数指针,该函数指针指向的函数参数是 int ,函数返回类型为 void,signal 函数的返回类型也是一个函数指针。该函数指向的函数参数是 int ,返回类型为 void 。

这里给大家补充一个简化代码2的方法,代码示例如下:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>typedef int* ptr_t;    //将 int* 重新命名为 ptr_t
typedef void(*pf_t)(int); //意思是将 void(*)(int) 重新命名为 pf_t,pf_t是类型int main()
{void(* signal( int, void(*)(int) ) )(int);//化简后pf_t signal(int, pf_t);return 0;
}

这里要注意区分:typedef void(*pf_t)(int)中的 pf_t 是类型名;不写 typedef 时,void(*pf)(int) 中的pf是指针变量的名字。


感谢大家能够看完这篇博客,创作时长,小伙伴们觉得我的博客对你有帮助,不妨留下你的点赞的收藏,关注我,带你了解不一样的C语言。

98b76a6f4a9c4ca88fd93da1188ac6f9.gif

http://www.yayakq.cn/news/743948/

相关文章:

  • 网站寄生虫怎么做网站系统维护中
  • 建设外贸网站的公司灰色网站
  • 网站所有分类中 点击箭头不出现下拉菜单啥是东莞网站优化推广
  • 购物网站用html怎么做网站模版 免费下载
  • 动漫网站建设赚钱吗网站建设哪些资质
  • 公司备案查询网站备案学校网站建设培训心得体会
  • 实验室网站建设方案做出网站
  • 网上书店网站开发在那个网站做付汇的延期说明
  • 网站由那些组成wordpress手动主题
  • 洪江市网站wordpress 主页图片
  • 网站建设难学吗湘西做网站
  • 专业建网站服务门户网站建设会议纪要
  • 网站规划与建设 试卷wordpress建站 百度网盘
  • 合肥网站建设求职简历织梦网站内容管理系统
  • 网站制作基本流程静态网页模板制作工具
  • 做网站设计的公司有哪些上海网站推广优化
  • 河南信合建设投资集团有限公司网站无货源网店怎么开
  • 软文网站发布平台电商运营培训课程
  • 个人网站建设第一步如何建设一个门户网站
  • 网站编程电子书湖北建设网站首页
  • 男男做h的视频网站工信部公布网站备案拍照背景
  • 手机网站html声明网站打开很慢
  • 中国铁建商城电子商务平台wordpress 深度优化
  • 软件app开发定制北京空间优化平台
  • 百度收录网站标题工程平台公司是什么意思
  • 手机可以建网站吗优化网页设计是什么
  • 深圳专业商城网站有哪些文本封面做的好的网站
  • 做外贸网站要多少钱asp.net网站开发代码
  • 怎么提交网站地图盐城网站优化推广工作室
  • 网站设计代做淮安网站建设报价