在 main(void)
中初始化之后:
char *params[MAXPARAMS] = {NULL};
params
传递给不同的函数。
我怎样才能像初始化时那样“重置”数组(在其他一些函数在其中存储字符串之后)?
编辑:params
用作参数列表,因此在某些操作后可能不会完全填充。我所说的“重置”是指:我不希望数组中留下任何字符串值,就像您在 Java 中清除
字符串数组一样,但保持相同的数组大小。
最佳答案
考虑到内存分配是正确完成的并且没有被释放,我认为如果您的目标是保存数组的值,您需要检查 memset()
函数。请查看手册页 here .
否则,如果你想和初始化时一样的位置,你可以free()
分配的内存,然后再次设置变量为NULL
。
请说明reset
是什么意思。届时我们将能够以更好的方式提供帮助。
关于c - 如何 'clear'一个字符串数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26974082/