第五天:golang學習筆記之fmt

★fmt | fmt 包實現(xiàn)了格式化I/O函數(shù),類似于C的 printf 和 scanf.

fmt

fmt包提供的最主要的功能只有兩個:Print,Scan

Print

輸出到屏幕的有如下幾個函數(shù)fmt.Print()fmt.Println(),fmt.Printf()
實現(xiàn)的基礎分別為通過fmt.FPrint()fmt.FPrintln()fmt.FPrintf()來輸出到sys.stdout
SprintFprint實現(xiàn)方法類似,只不過前者是返回string(p.buf),而后者是w.Write(p.buf)直接寫到Writer里
其實現(xiàn)采用了sync.Pool做對象復用,使用了類似fasthttp的p.buf = p.buf[:0]來做底層數(shù)組復用

Scan

Scan和Print類似

接口

接口有如下幾個,現(xiàn)在用不上,先不看了

    fmt.Scanner()
    fmt.State()
    fmt.ScanState()
    fmt.GoStringer()
    fmt.Stringer()
    fmt.Formatter()

format格式

最重要之一的應該是格式字符串的構建,golang文檔做了詳細的描述:fmt
直到幾個最基本的就行,剩下的用到了再去查
在linux控制臺下可以看到彩色字符實現(xiàn)方式如下:

fmt.Printf(" \033[31;44;4;1;5m狂拽酷炫屌炸天")

\033是前引符,[后接參數(shù),參數(shù)之間用;分號隔開,m代表參數(shù)結束
可用參數(shù)如下:

前景 背景 顏色
30 40 黑色
31 41 紅色
32 42 綠色
33 43 黃色
34 44 藍色
35 45 紫紅色
36 46 青藍色
37 47 白色
代碼 意義
0 終端默認設置
1 高亮加粗顯示
4 使用下劃線
5 閃爍
7 反白顯示
8 不可見
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容