print输出字体特效
在學習LINUX網絡編程的時候我們做了一個聊天系統,當時為了界面更漂亮點,于是在百度上搜索了下關于printf()函數的用法,和大家分享下:
????????????????????????? 給printf的輸出加上些特效比如顏色,可以讓打印信息更鮮明,在debug的時候特別有用。
??????????????????????? 顏色:
??????????????????????? #define NONE???????? "\033[m"?
??????????????????????? #define RED????????? "\033[0;32;31m"?
??????????????????????? #define LIGHT_RED??? "\033[1;31m"?
??????????????????????? #define GREEN??????? "\033[0;32;32m"?
??????????????????????? #define LIGHT_GREEN? "\033[1;32m"?
??????????????????????? #define BLUE???????? "\033[0;32;34m"?
??????????????????????? #define LIGHT_BLUE?? "\033[1;34m"?
??????????????????????? #define DARY_GRAY??? "\033[1;30m"?
??????????????????????? #define CYAN???????? "\033[0;36m"?
??????????????????????? #define LIGHT_CYAN?? "\033[1;36m"?
??????????????????????? #define PURPLE?????? "\033[0;35m"?
??????????????????????? #define LIGHT_PURPLE "\033[1;35m"?
??????????????????????? #define BROWN??????? "\033[0;33m"?
??????????????????????? #define YELLOW?????? "\033[1;33m"?
??????????????????????? #define LIGHT_GRAY?? "\033[0;37m"?
??????????????????????? #define WHITE??????? "\033[1;37m"
??????????????????????? 比如:
??????????????????????? printf("\033[31m ####----->> \033[32m" "hello\n"?
??????????????????????? "\033[m");
??????????????????????? 顏色分為背景色和字體色,30~39用來設置字體色,40~49設置背景:
??????????????????????????????? 背景色??????????????????????? 字體色
??????????????????????????????? 40: 黑????????????????????????? 30: 黑
??????????????????????????????? 41: 紅????????????????????????? 31: 紅
??????????????????????????????? 42: 綠????????????????????????? 32: 綠
??????????????????????????????? 43: 黃????????????????????????? 33: 黃
??????????????????????????????? 44: 藍????????????????????????? 34: 藍
??????????????????????????????? 45: 紫????????????????????????? 35: 紫
??????????????????????????????? 46: 深綠????????????????????? 36: 深綠
??????????????????????????????? 47: 白色????????????????????? 37: 白色?
??????????????????????? 記得在打印完之后,把顏色恢復成NONE,不然再后面的打印都會跟著變色。
?????????????????????????
??????????????????????? 另外,還可以加一些ANSI控制碼。加顏色只是以下控制碼中的一種:
??????????????????????? \033[0m?? 關閉所有屬性???
??????????????????????? \033[1m?? 設置高亮度???
??????????????????????? \033[4m?? 下劃線???
??????????????????????? \033[5m?? 閃爍???
??????????????????????? \033[7m?? 反顯???
??????????????????????? \033[8m?? 消隱???
??????????????????????? \033[30m?? --?? \033[37m?? 設置前景色???
??????????????????????? \033[40m?? --?? \033[47m?? 設置背景色???
??????????????????????? \033[nA?? 光標上移n行???
??????????????????????? \033[nB?? 光標下移n行???
??????????????????????? \033[nC?? 光標右移n行???
??????????????????????? \033[nD?? 光標左移n行???
??????????????????????? \033[y;xH設置光標位置???
??????????????????????? \033[2J?? 清屏???
??????????????????????? \033[K?? 清除從光標到行尾的內容???
??????????????????????? \033[s?? 保存光標位置???
??????????????????????? \033[u?? 恢復光標位置???
??????????????????????? \033[?25l?? 隱藏光標???
??????????????????????? \033[?25h?? 顯示光標
??????????????????????? printf( CYAN "current function is %s " GREEN " file line?is %d\n" NONE,
??????????????????????????????????? __FUNCTION__, __LINE__ );
????????????????????????fprintf(stderr, RED "current function is %s " BLUE "?file line is %d\n" NONE,
??????????????????????????????????? __FUNCTION__, __LINE__ );
??????????????????????????? return 0;
總結
以上是生活随笔為你收集整理的print输出字体特效的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux 中使用 KVM
- 下一篇: linux inode详解