我以为将第一个元素设置为null会清空char数组的所有内容。
char my_custom_data[40] = "Hello!";
my_custom_data[0] = '\0';
然而,这只将第一个元素设置为null。
或者
my_custom_data[0] = 0;
我认为,与其使用 memset
,上面两个示例清除所有数据的做法更好。
我以为将第一个元素设置为null会清空char数组的所有内容。
char my_custom_data[40] = "Hello!";
my_custom_data[0] = '\0';
然而,这只将第一个元素设置为null。
或者
my_custom_data[0] = 0;
我认为,与其使用 memset
,上面两个示例清除所有数据的做法更好。
在第一个字符写入空字符只是这样做。如果您将其视为字符串,则遵循空终止字符的代码将将其视为空字符串,但这与清除数据不同。如果您想要实际清除数据,则需要使用memset。
将第一个元素设置为NULL。打印字符数组将不会返回任何内容。
bzero(my_custom_data,40);
void clearArray (char *input[]){
*input = ' ';
}
请尝试以下方法:
strcpy(my_custom_data,"");