我认为将第一个元素设置为null会清除char数组的全部内容。
char my_custom_data[40] = "Hello!"; my_custom_data[0] = '\0'; 但是,这只会将第一个元素设置为null。
要么
my_custom_data[0] = 0; 而不是使用memset,我认为上述2个示例应清除所有数据。 问题来源于stack overflow
这取决于您如何查看阵列。如果将数组视为一系列字符,则清除数据的唯一方法是触摸每个条目。memset可能是实现此目标的最有效方法。
另一方面,如果您选择将其视为C / C ++空终止的字符串,则将第一个字节设置为0将有效清除该字符串。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。