一般的形式为: func(T (*func)(V args))
使用的时候,直接使用对应参数类型的函数名即可
函数的名字就是指向内存函数开始执行时的指针,因此可以直接进行赋值
通过传入不同函数作为参数,可以调用不同函数实现不同的功能
#includeint select_max(int numArray[10]){int iMax = numArray[0];
int i = 0;
for(i=0;i<10;i++){if(iMax iMax = numArray[i];
}
}
return iMax;
}
int select_min(int numArray[10]){int iMin = numArray[0];
int i = 0;
for(i=0;i<10;i++){if(iMin>numArray[i]){ iMin = numArray[i];
}
}
return iMin;
}
int select(int numArray[10],int (*func)(int[])){return func(numArray);
}
int main(){int array[10] = {1,3,2,4,0,9,8,5,6,7};
printf("max number of array is :%d\n",select(array,select_max));
printf("min number of array is :%d\n",select(array,select_min));
return 0;
}
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧