| |
|
| |
|
void xxx()
{
if(rs_buf[0]=='$')
{
for(i=0;i<sizeof(GPS_GPRMC)-1;i++)
{
j=getuartdat();
if(j<256)
{
rs_buf=(alt_u16)j;
if(rs_buf!=GPS_GPRMC)
return;
}
}
}
}
这句话成立: if(rs_buf!=GPS_GPRMC)
return;
即return执行后,程序再怎样运行,是不是直接跳出了函数xxx,即return在这里的作用是结束函数的运行?
有点疑惑,请大侠指教!
解:return 的本意就是函数退出,不管是一般函数还是中断函数,翻译成汇编也就是 ret 或 reti 指令,到底应该执行ret还是reti那是编译器事。
break只跳出离她最近的那层循环