指针(一)

发布时间:2016-12-11 16:00:32 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"指针(一)",主要涉及到指针(一)方面的内容,对于指针(一)感兴趣的同学可以参考一下。

今天复习了下指针,留几道关于函数指针的例题。 1.函数指针变量调用函数。 类型名 (*指针变量名)(); 类型名 (*指针变量名)(); #include "stdio.h" int max(int a, int b) { if (a > b) return a; else return b; } void main() { int max(int a, int b); int(*pmax)(int, int); int x, y, z; pmax = max; printf("input two numbers: \n"); scanf("%d %d", &x, &y); z = (*pmax)(x, y); printf("maxmum = %d\n", z); } 2.函数指针作为函数的形参 #include "stdio.h" #include "stdlib.h" typedef int(*FUNP)(int, int); int callfun(FUNP funp, int a, int b); int fmax(int a, int b); int fmin(int a, int b); void main() { int a, b; printf("input two integers: \n"); scanf("%d %d", &a, &b); printf("%d和%d的最大值是%d\n", a, b, callfun(fmax, a, b)); printf("%d和%d的最小值是%d\n", a, b, callfun(fmin, a, b)); } int callfun(FUNP funp, int a, int b) { int fvalue; fvalue = (*funp)(a, b); return fvalue; } int fmax(int a, int b) { return(a > b ? a : b); } int fmin(int a, int b) { return(a > b ? b : a); } 3.指针型函数 类型说明符 *函数名(形参表) #include "stdio.h" #include "stdlib.h" char *day_name(int n); void main() { int i; char *day_name(int n); printf("input Day No: \n"); scanf("%d", &i); if (i < 0) exit(1); printf("Day No: %2d-->%s\n", i, day_name(i)); } char *day_name(int n) { static char *name[] = { "Illegal day", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" }; return(n<1 || n>7 ? name[0] : name[n]); }

上一篇:钮文新:余额宝摧毁实业精神
下一篇:Java学习经验(一)多线程初识

相关文章

关键词: 指针(一)

相关评论