最近几天在写代码的时候,一不小又掉进一个老相识的陷阱里,好生惨痛。曾经告诫过自己,曾经提示过别人,但还是防不胜防。
看看代码样例吧。在最开始,我写了类似这样的一个for循环。
typedef unsigned int UINT;
UINT i = 0;
UINT myData[3];
for (i = 0; i < 3; i++)
{
myData[i] = i;
…
}
后来由于算法的需要,我觉得循环的方向需要调换一下,于是,想当然地就顺手改成下边的代码,结果就杯具了。
for (i = 2; i >= 0; i- -)
{
myData[i] = i;
…
}
本文通过一个代码样例展示了无符号整数作为循环变量时可能引发的问题,提醒开发者注意这类陷阱,避免在编程中犯错。
1978

被折叠的 条评论
为什么被折叠?



