隨筆 printf不能列印log資訊

2021-08-01 04:55:36 字數 364 閱讀 1090

相信對於很多開發來說,log列印是乙個順手的動作,也是除錯程式的基礎;

int printf(const char * __restrict, ...) __printflike(1, 2);

結果今天就遇到 printf 不能列印資訊。表示有點驚掉了下巴。。。

真相在這裡:

( 論壇中4樓這位大哥真相了。果然加了\n就可以!)

大哥回答原話:

我記得printf是行緩衝的。

用fflush(stdout);

或者每個printf列印串都以\n結束。

好像printf不宜做訊號處理函式,因為它不是執行緒安全的。

要是訊號來之前剛好程序執行到printf就會發生未知錯誤。

printf 列印顏色

控制字元的通用格式如下 esc m 其中 esc 是轉義字元,其值為 033 是常量的左中括號 是若干屬性,通常是由乙個有特定意義的數字代替,每個屬性之間用分號分隔 m 就是字面常量字元m 屬性列表如下 1.通用格式控制 0 重置所有屬性 1 高亮 加粗 2 暗淡 4 下劃線 5 閃爍 7 反轉 8...

printf 彩色列印

控制字元的通用格式如下 esc m 其中 esc 是轉義字元,其值為 033 是常量的左中括號 是若干屬性,通常是由乙個有特定意義的數字代替,每個屬性之間用分號分隔 m 就是字面常量字元m 部分顏色 字背景顏色 40 49 字顏色 30 39 40 黑 30 黑 41 紅 31 紅 42 綠 32 ...

LK 列印log控制

我們知道,lk裡面的log只能通過uart列印出來,看一下除了uart的初始化以及相關操作,這邊主要來看一下log的列印是如何控制列印級別的 首先看該檔案 1.project msm8610 mk top level project rules for the msm8610 project loc...