Duc*_*ran -4 c++ operators decrement postfix-operator
最近我发现使用st这样的风险:
int i = 10;
int sum = 0;
while ( i-- ){
sum = sum + i;
Run Code Online (Sandbox Code Playgroud)
它实际上得到sum = 9 + 8 + 7 + .. + 1.所以它总共缺少10个.但我更喜欢这种编码方式,它快速而专业.有什么建议可以防止风险并且仍然有简洁的代码吗?
你有一个计数器,一个停止条件和一个减量操作,所以使用一个for循环 - 它比一个更好的拟合while:
int sum = 0;
for (int i = 10; i > 0; --i) {
sum += i;
}
Run Code Online (Sandbox Code Playgroud)
"专业",简洁,无风险:)
编辑:或者如果你想要真正简洁:
int sum = 55;
Run Code Online (Sandbox Code Playgroud)