Chinaunix
标题:
为什么这个for会陷入死循环啊
[打印本页]
作者:
dsj889
时间:
2012-08-16 20:35
标题:
为什么这个for会陷入死循环啊
程序是这样的:
int i;
char ss[]="welcome";
char *cc=ss;
void main()
{
uart_init();
for(i=0;i<5;i++)
Send_byte(*cc++);
}
这个程序是用arm-linux—gcc编译的在arm上跑的裸机程序,经过测试,每当跑到for就死循环了而且是打印无数个相同的字母E。我不懂为什么会这个样子?求解释
作者:
lo_529
时间:
2012-08-16 22:23
把send_byte()注释掉看看正常不?正常的话就是send_byte()的实现有问题,不正常的话就是比较奇怪的问题。
应该就是send_byte()有问题,再检查下实现,或者把反编译的代码发上来看看。
作者:
janetliu9
时间:
2012-08-16 22:28
二楼正解,先检查Send_Byte, 如果没问题再检查uart_init, 应该不是循环的问题.
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2