函数指针:
//#define _CRT_SECURE_NO_WARNINGS
//#include<stdio.h>
说明
1.max函数
2.接收两个int,返回较大数
//int max(int a, int b) {
// return a > b ? a : b;
//}
//
//int main() {
// int x, y, maxVal;
// //1、说明 函数指针
// //2、int表示该函数指针指向的函数是返回int类型
// //3.(int,int)表示该函数指针指向函数形参是接受两个int
// int(*pmax)(int, int) = max;
// printf("输入两个数:");
//
// scanf("%d,%d", &x, &y);
// maxVal = (*pmax)(x, y);//(*pmax)(x,y)通过函数指针去调用函数
// printf("最大的值:%d\n", maxVal);
//
// system("pause");
// return 0;
//}
回调函数:
使用回调函数的方式,给一个整型数组int arr[0]赋10个随机数
//#include<stdio.h>
//#include<stdlib.h>
回调函数
1.int(*f)(void)
2.f就是函数指针,他可以接收的函数是(返回int,没有形参的函数)
3.f在这里被initArray调用,充当回调函数角色
//void initArray(int *array, int arraySize, int(*f)(void)) {
// int i;
// for (i = 0; i < arraySize; i++) {
// array[i] = f();//通过函数指针调用了getNextRamdomValue函数
//
// }
//}
获取随机数
//int getNextRandomValue(void) {
// return rand();
//
//}
//
//int main(void) {
// int myarray[10], i;//定义一个数组和int
// //1.调用initArray函数
// //2.传入了一个函数名getNextRandomValue(地址),需要使用函数指针接收
// initArray(myarray, 10, getNextRandomValue);
// for (i = 0; i < 10; i++) {
// printf("\n%d", myarray[i]);
// }
// printf("\n");
// getchar();
// return 0;
//}