![]() |
發(fā)布時間: 2023-8-14 10:25
正文摘要:大佬們好,我是一名老菜鳥。有如下問題求解惑,跪謝。 如圖,這是GPS語句,結束字符是<CR><LF>,我的問題是,如果是\0結束,可以用while (*str!="\0")退出循環(huán),像這種的如何,如何處理? |
字符串與16進制判斷的問題,發(fā)送時,不發(fā)送\0,最后再發(fā)送0D0A |
可以用while (*str!='\n')退出循環(huán) |
<CR><LF>是回車換行符,字符值是0x0A,0x0D; \0是字符串結束符,值是0x00;想跳出循環(huán),判斷條件可以顯而易見了 |
可以檢測字符是否是 '\r' 和'\n'。 while( (buf[i] != '\n') && (buf[i-1] != '\r')) |
你這是把兩個問題弄混淆了,NMEA協(xié)議是串口,以\r\n作為結束標志,里面并沒有\(zhòng)0這個字符。 但是你要把NMEA一條指令放在c語言里面當成字符串存儲,\r\n后面要跟一個\0作為字符串結束標志。 完全是兩個風馬牛不相及的東西。 |
Powered by 單片機教程網(wǎng)