无法清除字符数组

标签 c arrays string char

我的 C 应用程序逐个字符地读取文件并将字符值存储在字符数组中。在某个时刻,需要清除 char 数组以便输入另一个值。但是,当我尝试清除它时,字符仍然保留在数组中。

这是我重置数组的方式:

void resetArray(){
    operand[0] = '\0';
}

我做错了什么?

最佳答案

将第一个字符设置为空终止符将使数组的其余部分完整地保留在内存中。打印字符串不会打印它们,但它们仍然存在。

你必须清除剩余的内存。

memset( array , 0 , sizeof( array ) ) ;

关于无法清除字符数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22211058/

相关文章:

char ** 然后取消对 char * 的引用

VIVADO HLS的C语言-如何将Pseudo_random二进制序列存储并生成到memcpy中

sql - SQL :中如何将数据转换成这种形式

arrays - TCL:如何将tcl数据转换为json格式?

string - 如何在 MongoDB 中将 B.C 之前的日期存储为 ISODate?

android - 如何在 Android 中为 "command line"C 程序设置互联网权限?

C Devoweler内存错误

c - 如何在C中将2个字符的字符串分成2个不同的字符串?

java - 在数组的另一个类中调用 getAverage 方法

.net - C#在字符串中添加一个字符