C/C++:int数组[10] = {0}如何工作?

前端之家收集整理的这篇文章主要介绍了C/C++:int数组[10] = {0}如何工作?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > how does array[100] = {0} set the entire array to 0?4个
我想知道int array [10] = {0}是如何工作的?

这样整个阵列都会一路走来吗?

for(int i=0;i<10;i++) array[i]=0;

还是更有效率?

解决方法

取决于变量的范围.

>全局范围 – 在调用main函数之前,数组将放在.bss段中并归零.它更快吗?这肯定是不同的,因为在主要开始之前进行归零
>本地范围 – 由于这些内部例程针对特定硬件进行了优化,因此{0}初始化将更快地进行IMO.我用gcc和amp测试了VS和它更快 – 但当然不能保证你的编译器会以同样的方式做到这一点. https://godbolt.org/g/JdTPHJ

原文链接:https://www.f2er.com/c/118177.html

猜你在找的C&C++相关文章