递归函数和回调函数的用法c语言
递归函数是指在函数中调用自身的函数,适用于需要重复执行相同操作的场合。递归函数通常需要一个结束条件,以避免无限循环。
示例:
int factorial(int n) {
if (n == 0) {
return 1;
} else {
return n * factorial(n - 1);
}
}
int main() {
int n = 5;
printf("%d! = %d\n", n, factorial(n));
return 0;
}
回调函数是指将一个函数作为参数传递给另一个函数,在另一个函数中调用该函数。回调函数通常用于事件处理、异步编程等场合。
示例:
void print_array(int arr[], int len, void (*print_func)(int)) {
for (int i = 0; i < len; i++) {
print_func(arr[i]);
}
}
void print_int(int x) {
printf("%d ", x);
}
int main() {
int arr[] = {1, 2, 3, 4, 5};
int len = sizeof(arr) / sizeof(arr[0]);
print_array(arr, len, print_int);
return 0;
}
原文地址: https://www.cveoy.top/t/topic/lXL 著作权归作者所有。请勿转载和采集!