在 c 中释放双指针的干净方法

Clean way to free double pointer in c

我正在动态分配一个双指针(char **pointer),一些方法之后关于长度的信息不再是已知的。

有没有一种干净的方法可以在不知道指针数组长度的情况下同时释放 "pointer array" 和 "char array"?

我只能想到使用数组的索引 0 作为它的总长度。

技术上有办法。

如果分配一个额外的指针,并将最后一个指针设置为NULL,则可以释放所有双精度数组,然后释放双精度数组直到达到NULL。原理和字符串类似。

不过你可能不需要这个。