加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 如何将新阵列归零?

发布时间:2020-12-16 09:48:02 所属栏目:百科 来源:网络整理
导读:1: int a[100] = {}; 2: int a[100];memset(a,sizeof(a)); 3: int a[100];fill(a,a + 100,0); 从上面显示的方法中将新数组归零的最佳方法是什么,它们之间有什么区别? 解决方法 1:最好的.它将所有值设置为默认值,大多数值为0. 2:这很危险,它会将模式0复
1:

int a[100] = {};

2:

int a[100];
memset(a,sizeof(a));

3:

int a[100];
fill(a,a + 100,0);

从上面显示的方法中将新数组归零的最佳方法是什么,它们之间有什么区别?

解决方法

1:最好的.它将所有值设置为默认值,大多数值为0.

2:这很危险,它会将模式0复制到整个数组中.例如,如果数组是浮点数,则无法保证它表示为零. memset也会按字节顺序复制,而不是单词,如果你传递的不是零,会导致各种问题.例如,memset(a,1,…)将使其填充16843009.除非使用C字符串,否则不应使用Memset.

3:合法,清晰.易于扩展到非零值,而(1)则不会.虽然更冗长.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读