c語言printf列印字串顏色

2021-07-27 15:13:41 字數 2189 閱讀 3311

基本列印

格式:printf("\033[字背景顏色;字型顏色m字串\033[0m" );

printf("\033[41;32m字型背景是紅色,字是綠色\033[0m\n");

41是字背景顏色, 32是字型的顏色, 字型背景是紅色,字是綠色是

要輸出的

字串.  後面的

\033 ...

\033[0m是

配對的為

控制碼。

先來說一下顏色和背景的**

顏色**:

quote:

字背景顏色範圍: 40--49                   字顏色: 30--39

40: 黑                           30: 黑

41: 紅                           31: 紅

42: 綠                           32: 綠

43: 黃                           33: 黃

44: 藍                           34: 藍

45: 紫                           35: 紫

46: 深綠                         36: 深綠

47: 白色                         37: 白色

注意到總體範圍是從30到49

,在printf("\033[41;32m字型背景是紅色,字是綠色\033[0m\n");

中\033[41;32m

是可以單獨只指定背景顏色或者字型顏色的,這樣另外的部分就是預設狀態如

\033[32m

表示字型是綠色背景預設而

\033[41m

表示背景為紅色字型預設。

在「字型背景是紅色,字是綠色

」這一部分可以是要輸出的字串,也可以是格式控制串包含格式控制符如

printf("\033[41;32m

%2d\033[0m\n",a

);則會輸出

int型的

a,背景佔

2字元為紅色,字型為綠色。

我們再說一下控制碼,不同的控制碼會產生不同的效果,

這些屬性可以寫在後面,也可以載入前面如

printf("

\033[0m

\033[41;32m

%2d\n",a

);也是可以的,不同在於是先列印再新增屬性還是先新增屬性再列印還是先列印再新增屬性。當然一次也可以新增多個屬性,總體原則是格式為:

\33[ + 屬性** 隨你喜好開心就好

ansi控制碼:

quote:

\033[0m   關閉所有屬性  

這個關閉的屬性是指的之前通過ansi

控制碼獲得的屬性,這些屬性得後遇到

\033[0m

會關閉\033[1m   設定高亮度  

(游標過出均變為背景色)

\03[4m   下劃線  

\033[5m   閃爍  

\033[7m   反顯  

\033[8m   消隱  

\033[30m   --   \033[37m   設定前景色  

\033[40m   --   \033[47m   設定背景色  

\033[na   游標上移n行  

\03[nb   游標下移n行  

\033[nc   游標右移n行  

\033[nd   游標左移n行  

\033[y;xh設定游標位置  

\033[2j   清屏  

\033[k   清除從游標到行尾的內容  

\033[s   儲存游標位置  

\033[u   恢復游標位置  

\033[?25l   隱藏游標  

\33[?25h   顯示游標

在說一下,其實這些屬性資訊中的相關數字也是可以通過變數的傳入傳進去的例如:

for (x = p_x + 36, y = p_y + 1; y <= 25; y++)

printf("\33[%d;%dh\33[41m

==\33[0m", y, x);

這裡游標的衛士就是通過變數傳入的,

==是列印內容,顏色也是這樣,我們可以建立隨機傳入。

這樣, 在某些時候就可以實現動態的輸出

,或者列印一些圖案。

DbgPrint列印字串

1 直接列印字串。dbgprint hello world 2 空結尾的字串,你可以用普通得c 語法表示字串常量 char variable string hello world dbgprint s variable string 3 空結尾的寬字串 wchar 型別 wchar string w...

Scala列印字串

1 字串,通過 號連線 2 printf用法 字串,通過 傳值。3 字串模板 通過 獲取變數值 列印字串 val username zhangdan val userage 20println 使用者名稱 username 使用者年齡 userage scala中簡化了關於json的表達 print...

C語言 printf 列印指定長度字串

1.原樣輸出字串 printf s str 2.輸出指定長度的字串,超長時不截斷,不足時右對齊 printf ns str n 為指定長度的10進製數值 3.輸出指定長度的字串,超長時不截斷,不足時左對齊 printf ns str n 為指定長度的10進製數值 4.輸出指定長度的字串,超長時截斷,...