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

网站优化建设扬州asp做学生信息网站

网站优化建设扬州,asp做学生信息网站,怎么把网站和域名绑定,景观设计效果图Hi~#xff01;这里是奋斗的小羊#xff0c;很荣幸各位能阅读我的文章#xff0c;诚请评论指点#xff0c;关注收藏#xff0c;欢迎欢迎~~ #x1f4a5;个人主页#xff1a;小羊在奋斗 #x1f4a5;所属专栏#xff1a;C语言 本系列文章为个人学习笔记#x…                   Hi~这里是奋斗的小羊很荣幸各位能阅读我的文章诚请评论指点关注收藏欢迎欢迎~~                                      个人主页小羊在奋斗                                 所属专栏C语言    本系列文章为个人学习笔记在这里撰写成文一为巩固知识二为同样是初学者的学友展示一些我的学习过程及心得。文笔、排版拙劣望见谅。 4、函数指针数组 5、转移表 4、函数指针数组 在上篇文章中我们又学了一个新的指针类型——函数指针类型那学了函数指针你是否还记得我们还学过指针数组呢指针数组是一个数组数组元素是相同类型的指针变量。那我们是不是也可以将相同类型的函数指针变量存到一个指针数组内呢答案是可以的。 存放函数指针变量的数组就叫做函数指针数组函数指针数组出现的意义我就不多说了跟其他类型数组的作用一样。 来看下面的示例 #include stdio.hint add(int x, int y) {return x y; }int sub(int x, int y) {return x - y; }int mul(int x, int y) {return x * y; }int div(int x, int y) {return x / y; }int main() {//int (*pf1)(int, int) add;//int (*pf2)(int, int) sub;//int (*pf3)(int, int) mul;//int (*pf4)(int, int) div;int (*pf[4])(int, int) { add, sub, mul, div };//函数指针数组return 0; } 可以看到函数指针数组能避免我们需要多个相同函数指针类型变量创建时的繁琐。 为了验证上面创建的函数指针数组我们来遍历上面的数组将数组内所有的函数指针指向的函数都使用一遍 可以看到我们通过数组内对应下标的元素找到相应的函数地址再进行函数调用完成了相关的操作得到了我们预期的结果。 值得注意的是不要忘了数组内存放的是相同类型的元素。如果这些函数的参数个数、参数类型、函数的返回值类型有差异则不能存到同一个函数指针数组中。 5、转移表 我们学了函数指针数组有什么用呢函数指针数组的用途就是接下来我们要学习的转移表。 在介绍转移表之前我们先来完成一个能实现计算器功能的小程序。 #include stdio.hint add(int x, int y) {return x y; }int sub(int x, int y) {return x - y; }int mul(int x, int y) {return x * y; }int div(int x, int y) {return x / y; }void menu() {printf(*****************************\n);printf(******* 0.exit ******\n);printf(******* 1.add 2.sub ******\n);printf(******* 3.mul 4.div ******\n);printf(*****************************\n); }int main() {int input 0;int x 0;int y 0;int ret 0;do{menu();printf(请选择);scanf(%d, input);switch (input){case 1:printf(请输入两个操作数);scanf(%d %d, x, y);ret add(x, y);printf(结果是%d\n, ret);break;case 2:printf(请输入两个操作数);scanf(%d %d, x, y);ret sub(x, y);printf(结果是%d\n, ret);break;case 3:printf(请输入两个操作数);scanf(%d %d, x, y);ret mul(x, y);printf(结果是%d\n, ret);break;case 4:printf(请输入两个操作数);scanf(%d %d, x, y);ret div(x, y);printf(结果是%d\n, ret);break;case 0:printf(退出计算器\n);break;default:printf(选择错误请重新选择\n);break;}} while (input);return 0; } 上面的程序还不能实现更多的计算功能比如 、^、|、~、、 等想要增加更多的功能我们不仅要写更多的自定义函数还要增加更多的 case 语句实现起来有点繁琐完成后将得到一个代码量比较大的小程序。那有没有什么办法既能实现计算器的功能代码量又没有那么大想增加别的功能的时候也不麻烦呢 我们可以用刚学的函数指针数组来将四个自定义函数统一管理起来通过数组下标访问对应的元素来实现函数调用这样代码量就能大大减少。不仅如此我们想增加某些功能的时候只需要做两步第一步写好对应的自定义函数第二步增大数组的大小后再将函数名存到数组中就完成了。我们去掉了 switch 语句用 if—else 分支来判断我们选择。具体代码实现如下 #include stdio.h #define N 5int add(int x, int y) {return x y; }int sub(int x, int y) {return x - y; }int mul(int x, int y) {return x * y; }int div(int x, int y) {return x / y; }void menu() {printf(*****************************\n);printf(******* 0.exit ******\n);printf(******* 1.add 2.sub ******\n);printf(******* 3.mul 4.div ******\n);printf(*****************************\n); }int main() {int input 0;int x 0;int y 0;int ret 0;int (*pf[N])(int, int) { 0, add, sub, mul, div }; //多加一个数字0为了让下标对应do // 0 1 2 3 4{menu();printf(请选择);scanf(%d, input);if (input 0 input N)//使用if判断代替多条case语句{printf(请输入两个操作数);scanf(%d %d, x, y);ret pf[input](x, y);printf(结果是%d\n, ret);}else if (0 input){printf(退出计算器!\n);}else{printf(选择错误请重新选择\n);}} while (input);return 0; } 我们在上面的代码中创建了一个函数指针数组通过数组来访问相应的函数有一点跳转的意思。而我们上面代码中写的函数指针数组就是一个转移表。 什么是转移表呢 在C语言中转移表是一个包含指向函数或变量的指针的数组。通过使用转移表可以实现一种灵活的方式来实现条件分支和函数调用。转移表通常用于实现状态机或分派表等功能。通过在转移表中存储函数指针可以根据条件或索引值来动态选择要执行的函数从而提高代码的灵活性和可维护性。 如果觉得我的文章还不错请点赞、收藏 关注支持一下我会持续更新更好的文章。
http://www.hkea.cn/news/14401891/

相关文章:

  • 梧州推广网站服务商急招程序员
  • 赌求网站开发html5制作网站
  • 沈阳大东区做网站公司上海网站建设代码
  • 装修效果图网站网站建设设计方案书
  • 学做凉菜冷菜的网站天津定制网站建设商店设计
  • 河南省住房建设厅官方网站广告设计公司朋友圈文案
  • 网站站点断开wordpress难吗
  • 专业电子商务网站建设淘宝付费推广
  • 在服务器上布网站怎么做wordpress是什么需要
  • 十个实用网站网址兰溪建设局网站
  • 上海网站建设服务商个人logo设计图片
  • 恒基建设集团网站地址手机网站服务器
  • 自己做的网站邮箱更改密码程序为什么总出错互联网行业最有前景的十大职业
  • 佛山 做网站公司有哪些电商如何推广
  • 格尔木有做网站的吗海珠区建网站
  • html 网站新功能介绍定制网站开发公司电话
  • 深圳观澜网站建设sem是什么仪器
  • 济南做微网站推广郑州网站建设专业公司
  • 单页手机网站源码wordpress is tag
  • 酒店网站建设价格宁波专业的网站建设
  • 先备案 做网站关键对话
  • 云南省建设厅网站二建河北邢台重大新闻
  • 湛江网站建设价格wordpress中文广告
  • 中山一站式营销推广平台子目录安装wordpress
  • seo站内站怎么做广州公司注册地址提供
  • 网站admin目录名怎么改专业网站建设联系电话
  • 站长工具权重局域网内服务器做网站
  • h5可以用什么网站做wordpress 门户模板下载
  • 宁波seo专员seo推广沧州公司电话
  • 企业如何进行网站备案用手机可以做网站吗