哪种是优化方式?
1)
{
int a[100] = {0};
}
或2)
{
int a[100];
memset(a,0,100);
}
两个approches生成的汇编代码因指令数而异?
答案 0 :(得分:1)
它们通常编译为相同的汇编代码,尤其是在启用优化的情况下,或者通过简单循环(例如rep stos
)编译。
但是,这取决于上下文:您通常不需要(尽管您认为如此)将数组归零。
我肯定更喜欢第一个版本,因为它不容易出错,并且(imho)明确说明你的意图。