开发者社区 问答 正文

清除char数组c

我认为将第一个元素设置为null会清除char数组的全部内容。

char my_custom_data[40] = "Hello!"; my_custom_data[0] = '\0'; 但是,这只会将第一个元素设置为null。

要么

my_custom_data[0] = 0; 而不是使用memset,我认为上述2个示例应清除所有数据。 问题来源于stack overflow

展开
收起
保持可爱mmm 2020-02-08 11:10:20 576 分享 版权
1 条回答
写回答
取消 提交回答
  • 这取决于您如何查看阵列。如果将数组视为一系列字符,则清除数据的唯一方法是触摸每个条目。memset可能是实现此目标的最有效方法。

    另一方面,如果您选择将其视为C / C ++空终止的字符串,则将第一个字节设置为0将有效清除该字符串。

    2020-02-08 11:10:31
    赞同 展开评论
问答标签:
问答地址: