当前位置: 首页> 教育> 就业 > 网站建站啥意思_app制作培训_平台怎么推广技巧_windows优化大师卸载

网站建站啥意思_app制作培训_平台怎么推广技巧_windows优化大师卸载

时间:2025/7/10 0:44:34来源:https://blog.csdn.net/m0_63299495/article/details/145037209 浏览次数:0次
网站建站啥意思_app制作培训_平台怎么推广技巧_windows优化大师卸载

关于指针变量,本专栏相关文章链接如下:

【C语言】_指针变量_c语言指针变量-CSDN博客icon-default.png?t=O83Ahttps://blog.csdn.net/m0_63299495/article/details/144883068【C语言】_字符数组与常量字符串-CSDN博客icon-default.png?t=O83Ahttps://blog.csdn.net/m0_63299495/article/details/145016708【C语言】_指针数组和数组指针-CSDN博客icon-default.png?t=O83Ahttps://blog.csdn.net/m0_63299495/article/details/145033052本文介绍函数指针变量。

1. 函数名与&函数名

#include<stdio.h>
int Add(int x, int y) {return x + y;
}
int main() {printf("&Add = %p\n", &Add);printf(" Add = %p\n", Add);return 0;
}

运行结果如下:

注:对于函数,函数名=&函数名,均表示函数的地址

请注意区别于数组名与&数组名,相关内容参考下文:

【C语言】_指针与数组-CSDN博客icon-default.png?t=O83Ahttps://blog.csdn.net/m0_63299495/article/details/144947245

2. 函数指针的定义

2.1 从数组指针到函数指针

#include<stdio.h>
int Add(int x, int y) {return x + y;
}
int main() {// array pointerint arr[5] = { 1,2,3,4,5 };int(*pa)[5] = &arr;// function pointerint(*pf)(int,int) = &Add;return 0;
}

2.2 定义函数指针

#include<stdio.h>
int Add(int x, int y) {return x + y;
}
char test1(float m,float n) {return m > n ? 'Y' : 'N';
}
char* test2(char a, char b) {return a > b ? &a : &b;
}
int main() {int(*pf1)(int, int) = &Add;char(*pf2)(float, float) = &test1;char* (*pf3)(char, char) = &test2;return 0;
}

以test3为例,对char* (*pf3)(char, char) = &test2 理解如下:

char* 表示test2函数返回值类型为char* ,

(*pf3) 表示pf3为指针变量,且指针变量名为pf3,

(char, char)表示test2函数的参数类型及参数个数;

3. 通过函数名与函数指针调用函数

#include<stdio.h>
int Add(int x, int y) {return x + y;
}
int main() {int num1 = Add(8, 5);printf("%d\n", num1);int (*pf)(int, int) = &Add;int num2 = (*Add)(8, 5);printf("%d\n", num2);
}

运行结果如下:

注:使用函数指针调用函数时,可解引用调用(上例),也可不解引用调用:

#include<stdio.h>
int Add(int x, int y) {return x + y;
}
int main() {int (*pf)(int, int) = &Add;int num2 = (*Add)(8, 5);int num3 = Add(8, 5);printf("%d\n", num2);printf("%d\n", num3);
}

运行结果如下: 

关键字:网站建站啥意思_app制作培训_平台怎么推广技巧_windows优化大师卸载

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: