这是我的代码:pipeArr[i] =commands 行导致段错误核心转储。
char ***pipeArr;
for (int i = 0; i < numPipes; i++) {
char** commands = /* a function that returns char** */
pipeArr[i] = commands;
}
为什么将 char** 数组分配给未分配的 char*** 数组的索引会导致段错误?有什么办法可以防止这种情况发生吗?
最佳答案
您从未向pipeArr
分配任何值,因此它只是一个指向任何特定内容的指针。因此,当您执行 pipeArr[i] = ...
时,您将修改第 i
个元素,但没有任何特殊内容。
关于c - 将 char** 分配给空数组时,Seg 错误核心转储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58091602/