递归函数是指在函数中调用自身的函数,适用于需要重复执行相同操作的场合。递归函数通常需要一个结束条件,以避免无限循环。

示例:

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;
}
递归函数和回调函数的用法c语言

原文地址: https://www.cveoy.top/t/topic/lXL 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录