C中的动态分配-分配到一个函数中



我想要的是分配选项卡并用一些数字填充它。

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void prepare_internship(int** tab) {
    *tab = malloc(5 * sizeof(int));
    *(*tab+0) = 1;
}
int main() {
    int** tab;
    prepare_internship(tab);
    printf("%d", *(tab));
    return 0;
}

您正在将一个未初始化的指针传递到prepare_internship中。如果你想让函数修改tab,你需要的是:

int* tab;
prepare_internship(&tab);

但在这种情况下,最好将函数更改为具有int*返回类型,然后可以简单地用tab = prepare_internship(); 调用它

int** tab未初始化。它应该是int* tab,当作为参数传递时,传递方式如下:&tab

相关内容

  • 没有找到相关文章

最新更新