<small id='GXrs6BNbI'></small> <noframes id='Hvb4'>

  • <tfoot id='bsHx9hcaXI'></tfoot>

      <legend id='CjaG3Kf'><style id='WlCs6'><dir id='caPmZ7B'><q id='SaqtdjkVev'></q></dir></style></legend>
      <i id='AD3FxRJET'><tr id='05UJhl'><dt id='W7Dvb36rc'><q id='PqIdJokLs'><span id='bypWfY'><b id='IG1Y764'><form id='OZuqIMgnVY'><ins id='03GC1LK'></ins><ul id='3oYhEgFtB'></ul><sub id='repMEltz6'></sub></form><legend id='m4cPNEM'></legend><bdo id='PGFLZxhX'><pre id='SB98Au'><center id='cQf73NASxP'></center></pre></bdo></b><th id='QEl8ngR'></th></span></q></dt></tr></i><div id='65WXNanyU'><tfoot id='e8YL7cMn96'></tfoot><dl id='wLqGuEHK'><fieldset id='no1Zj'></fieldset></dl></div>

          <bdo id='Cteog'></bdo><ul id='ELvKo'></ul>

          1. <li id='w4ex9'></li>
            登陆

            一号站官网-值得保藏参阅的 fmt 包攻略

            admin 2019-11-01 208人围观 ,发现0个评论

            fmt规范库是咱们在学习Go言语过程中触摸最早最频频的一个了,本文介绍了fmtb包的一些常用函数。

            fmt

            fmt包完成了相似C言语printf和scanf的格局化I/O。首要分为向外输出内容和获取输入内容两大部分。

            向外输出

            规范库fmt供给了以下几种输出相关函数。

            Print

            Print系列函数会将内容输出到体系的规范输出,差异在于Print函数直接输出内容,Printf函数支撑格局化输出字符串,Println函数会在输出内容的完毕增加一个换行符。

            举个简略的比如:

            履行上面的代码输出:

            Fprint

            Fprint系列函数会将内容输出到一个io.Writer接口类型的变量w中,咱们一般用这个函数往文件中写入内容。

            举个比如:

            留意,只需满意io.Writer接口的类型都支撑写入。

            Sprint

            Sprint系列函数会把传入的一号站官网-值得保藏参阅的 fmt 包攻略数据生成并回来一个字符串。

            简略的示例代码如下:

            Errorf

            Errorf函数依据format参数生成格局化字符串并回来一个包括该字符串的过错。

            func Errorf(format string, a ...interface{}) error

            一般运用这种方法来自界说过错类型,例如:

            err := fmt.Errorf("这是一个过错")

            格局化占位符

            *printf系列函数都支撑format格局化参数,在这里咱们依照占位符将被替换的变量类型区分,便利查询和回忆。

            通用占位符

            示例代码如下:

            输出成果如下:

            布尔型

            整型

            示例代码如下:

            输出成果如下:

            浮点数与复数

            示例代码如下:

            输出成果如下:

            字符串和[]byte

            示例代码如下:

            输出成果如下:

            指针

            示例代码如下:

            输出成果如下:

            宽度标识符

            宽度经过一个紧跟在百分号后边的十进制数指定,假如未指定宽度,则表明值时除必需之外不作填充。精度经过(可选的)宽度后跟点号后跟的十进制数指定。假如未指定精度,会运用默许精度;假如点号后没有跟数字,表明精度为0。举例如下:

            示例代码如下:

            输出成果如下:

            其他falg

            举个比如:

            输出成果如下:

            获取输入

            Go言语fmt包下有fmt.Scan、fmt.Scanf、fmt.Scanln三个函数,能够在程序托福报名官网运转过程中从规范输入获取用户的输入。

            fmt.Scan

            函数定签名如下:

            • Scan从规范输入扫描文本,读取由空白符分隔的值保存到传递给本函数的参数中,换行符视为空白符。
            • 本函数回来成功扫描的数据个数和遇到的任何过错。假如读取的数据个数比供给的参数少,会回来一个过错报告原因。

            详细代码示例如下:

            将上面的代码编译后在终端履行,在终端顺次输一号站官网-值得保藏参阅的 fmt 包攻略入小王子、28和false运用空格分隔。

            fmt.Scan从规范输入中扫描用户输入的数据,将以空白符分隔的数据别离存入指定的参数。

            fmt.Scanf

            函数签名如下:

            • Scanf从规范输入扫描文本,依据format参数指定的格局去读取由空白符分隔的值保存到传递给本函数的参数中。
            • 本函数回来成功扫描的数据个数和遇到的任何过错。

            代码示例如下:

            将上面的代码编译后在终端履行,在终端依照指定的格局顺次输入小王子、28和false。

            fmt.Scanf不同于fmt.Scan简略的以空格作为输入数据的分隔符,fmt.Scanf为输入数据指定了详细的输入内容格局,只要依照格局输入数据才会被扫描并存入对应变量。

            例如,咱们仍是依照上个示例中以空格分隔的方法输入,fmt.Scanf就不能正确扫描到输入的数据。

            fmt.Scanln

            函数签名如下:

            • Scanln相似Scan,它在遇到换行时才中止扫描。最终一个数据后边必须有换行或许抵达完毕方位。
            • 本函数回来成功扫描的数据个数和遇到的任何一号站官网-值得保藏参阅的 fmt 包攻略过错。

            详细代码示例如下:

            将上面的代码编译后在终端履行,在终端顺次输入小王子、28和false运用空格分隔。

            fmt.一号站官网-值得保藏参阅的 fmt 包攻略Scanln遇到回车就完毕扫描了,这个比较常用。

            bufio.NewReader

            有时候咱们想完好获取输入的内容,而输入的内容或许包括空格,这种情况下能够运用bufio包来完成。示例代码如下:

            Fscan系列

            这几个函数功用别离相似于fmt.Scan、fmt.Scanf、fmt.Scanln三个函数,只不过它们不是从规范输入中读取数据而是从io.Reader中读取数据。

            Sscan系列

            这几个函数功用别离相似于fmt.Scan、fmt.Scanf、fmt.Scanln三个函数,只不过它们不是从规范输入中读取数据而是从指定字符串中读取数据。

            原文链接:https://www.liwenzhou.com/posts/Go/go_fmt/

            本文作者:李文周,原创授权发布

            请关注微信公众号
            微信二维码
            不容错过
            Powered By Z-BlogPHP