我要在函数中为char **指针中的char *指针分配内存时,我在做什么错了?
int main(void)
{
char** ar = NULL;
inti(&ar);
getchar();
return 0;
}
void inti(char*** x)
{
*x = (char**)calloc(sizeof(char*), 4);
}
我想将x中的单元格发送到另一个函数,该函数将在其中调用一个字符数组的内存。我该如何执行跟进功能?
答案 0 :(得分:0)
我可以建议裁掉中间人并执行以下操作吗? (此外,我相信您的calloc()arg是向后的。)
char** inti() {
char** c = calloc(4, sizeof(char*))
for (int i = 0; i < 4; i++) {
c[i] = malloc(/* length of string */);
}
return c;
}
int main(void) {
char** ptrptr = inti();
}