死循环
#include<stdio.h>
int main()
{
unsigned char i;
for ( i = 0; i <= 255; i++)
{
}
}
这个为什么会死循环呢?
[解决办法]
unsigned char的范围就是0-255 永远不可能大于255的 所以是死循环
[解决办法]
换成别的类型吧 unsigned int
[解决办法]
unsigned char的范围就是0-255,当i=255时再加1就又是零了,就这么循环
[解决办法]
楼上正解。。
[解决办法]
这个高级,能加到-1吧,然后再0,256是-1,吗?
[解决办法]
一楼说的很对,unsigned char的范围就是0-255 ,当i增加到255时,再对i进行加1操作,因为超出范围,i就会重新被赋值为0,开始新的循环。
[解决办法]
#include<stdio.h>
int main()
{
unsigned int i; //这样就不会死循环了 嘿嘿
for ( i = 0; i <= 255; i++)
{
}
}