基本上我想做的是在一个函数中初始化我的数组,但它会出现段错误:
void func(int **a, int x, int y) {
a = new int*[x];
for (int i=0; i<x; i++)
a[i] = new int[y];
}
void main() {
int **a;
func(a, 2, 3);
}
但是,如果我在函数外部初始化数组然后传递它,一切正常,我可以为它分配值/打印它们。我正在努力的是传递我的数组的引用,所以我不必在函数之外初始化它。
void func(int **a, int x, int y) {
for (int i=0; i<x; i++)
a[i] = new int[y];
}
void main() {
int x = 2;
int **a = new int*[x];
func(a, x, 3);
}