C:如何在char **数组中释放一个盒子并放入指向另一个盒子的指针

时间:2017-10-03 19:24:30

标签: c

我有一个像这样的char **数组: {"first", "and", "second", "and", "third"} 我想释放(array [3])并将指针放在数组[1]里面。 (因为它是相同的字符串)。 我试过但指针没有被修改。你能帮助我吗,谢谢。

1 个答案:

答案 0 :(得分:0)

您无法释放未使用malloc()动态分配的指针。只需重新指定指针而不使用free

array[3] = array[1];

这不可能节省任何内存,因为字符串文字是静态分配的。并且一些实现将合并相等的字符串文字,请参阅Addresses of two pointers are same,因此它可以有效地完成您想要的分配。

相关问题