C语言中函数指针的三种使用方法总结
发布时间:2020-12-15 03:36:08 所属栏目:C语言 来源:网络整理
导读:C语言中函数指针的三种使用方法总结 在这里分享一下自己的心得,希望和大家一起分享技术,如果有什么不足,还请大家指正。写出这篇目的,就是希望大家一起成长,我也相信技术之间没有高低,只有互补,只有分享,才能使彼此更加成长。 定义方式:int (*p)(int
C语言中函数指针的三种使用方法总结 在这里分享一下自己的心得,希望和大家一起分享技术,如果有什么不足,还请大家指正。写出这篇目的,就是希望大家一起成长,我也相信技术之间没有高低,只有互补,只有分享,才能使彼此更加成长。 定义方式:int (*p)(int x,int y); 实现代码: #include <stdio.h> int sum(int x,int y){ return x + y; } int reduce(int x,int y){ return x - y; } int multiply(int x,int y){ return x * y; } float divide(int x,int y){ if(y ==0) return 0; else return x *1.0f/ y; } struct Student{ int age; float weight; char *name; void(*studentP()); } int main(int argc,const char * argv[]) { // 1.定义函数指针 int (*p)(int x,int y); // 2.初始化 p = sum; // 3.赋值 int s = p(3,2); // 4.打印 printf("%dn",s);//=5; //-------------- printf("请输入数字1,2,3,4n"); int num; scanf("%d",&num); switch (num) { case 1: p = sum; break; case 2: p = reduce; break; case 3: p = multiply; break; case 4: p = divide; break; } int result = p(22,2); printf("%dn",result); //结构体: struct Student stu = (22,88,"tom",studp); printf("结构体长度=%d",sizeof(stu)); //1. stu.studp; //2. struct stu* stp = &stu; (*stp).studp; //3. stp -> studp; return 0; } 如有疑问请留言或到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |