回调函数
函数指针作为某个函数的参数()
函数指针变量可以作为函数的参数来使用,回调函数就是被调用函数通过这个指针来访问的那个函数(简单讲:回调函数是由别人的函数执行时调用你实现的函数)
void populate_array(int *array, size_t arraySize, int (*getNextValue)(void))
第三个参数:函数的指针,通过该函数来设置数组的值。
{
for (size_t i=0; i<arraySize; i++)
array[i] = getNextValue();
}
// 获取随机值 int getNextRandomValue(void)
{
return rand();
}
实例中 getNextRandomValue()为回调函数,它返回一个随机值,它作为一个函数指针传递给 populate_array() 函数。
populate_array() 将调用 10 次回调函数,并将回调函数的返回值赋值给数组。