1. 程式人生 > >嵌入式開發中, \r和\r\n的區別

嵌入式開發中, \r和\r\n的區別

     在嵌入式開發中,經常會涉及到用UART去列印一些運算中間層資料作為除錯,或者是列印輸出結果。為了處理資料的方便性,經常會涉及到資料的換行操作。那麼在換行過程中\r和\r\n有什麼區別呢?

在windows系統中:

'\r' 回車,回到當前行的行首,而不會換到下一行,如果接著輸出的話,本行以前的內容會被逐一覆蓋;

'\n' 換行,換到當前位置的下一行,而不會回到行首;

舉個例子:

#include <stdio.h>

int main()                    //main need return int data
{
    printf("line one.\r");
    printf("line two.\r");
}

執行結果為: (line two覆蓋了line one)

line two.

對比上述輸出:

#include <stdio.h>

int main()                    //main need return int data
{
    printf("line one.\r\n");
    printf("line two.\r");
}

執行結果為:

line one.
line two.

附:

轉義字元表: