我想要的是分配选项卡并用一些数字填充它。
#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
。