作为高级程序员键入程序时,n = 0;
看起来更加高效和干净。
但n = 0;
真的比 更有效率if (n != 0) n = 0;
吗?
什么时候
n
更有可能0
。什么时候
n
不太可能0
。什么时候
n
是绝对不确定的。
语言:C (C90)
编译器:Borland 的 Turbo C++
最少的可重现代码
void scanf();
void main()
{
int n; // 2 bytes
n=0; // Expression 1
scanf("%d",&n); // Absolutely uncertain
if(n!=0) n=0; // Expression 2
}
注意:我上面提到的代码仅供您参考。请不要随波逐流。
如果您对上述语言/标准/编译器不满意,请随时用您喜欢的语言/标准/编译器解释上述 3 种情况。