Awk各部分详解-格式化输出(13)
[align=left][color=black][size=10.5pt]printf[/size][/color][color=black][size=10.5pt]函数[/size][/color] [/align][align=left][color=black][size=10.5pt]打印输出时[/size][/color][color=black][size=10.5pt]print[/size][/color][color=black][size=10.5pt]函数不能很好的格式化输出,这时使用[/size][/color][color=black][size=10.5pt]printf[/size][/color][color=black][size=10.5pt]函数可以很好解决这个问题。[/size][/color][color=black][size=10.5pt]Printf[/size][/color][color=black][size=10.5pt]函数返回一个带格式的字符串给标准输出,如同[/size][/color][color=black][size=10.5pt]C[/size][/color][color=black][size=10.5pt]语言中的[/size][/color][color=black][size=10.5pt]printf[/size][/color][color=black][size=10.5pt]语句一样。[/size][/color][color=black][size=10.5pt]Printf[/size][/color][color=black][size=10.5pt]语句包括一个加引号分隔的控制串,控制串中可能嵌有若干格式说明和修饰符。控制串后面跟一个逗号,之后是一列由逗号分隔的表达式。[/size][/color][color=black][size=10.5pt]Printf[/size][/color][color=black][size=10.5pt]函数根据控制串中的说明编排这些表达式格式。与[/size][/color][color=black][size=10.5pt]print[/size][/color][color=black][size=10.5pt]函数不同的是,[/size][/color][color=black][size=10.5pt]printf[/size][/color][color=black][size=10.5pt]不会在行尾自动换行。因此,如果要换行,就必须在控制串中提供转义字符[/size][/color][color=black][size=10.5pt]\n[/size][/color][color=black][size=10.5pt]。[/size][/color][/align][align=left][color=black][size=10.5pt]每一个百分号和格式说明都必须有一个对应的变量。要打印百分号就必须在控制串中给出两个百分号。[/size][/color][/align][align=left][align=center][color=black][size=10.5pt]表[/size][/color][color=black][size=10.5pt]-printf[/size][/color][color=black][size=10.5pt]使用的转义字符[/size][/color][/align][/align][align=left][table=98%,#e6e6e6][tr][td=1,1,284][color=black][size=10.5pt]转义字符[/size][/color][/td][td=1,1,423][color=black][size=10.5pt]定义[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]c[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]字符[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]s[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]字符串[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]d[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]十进制整数[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]ld[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]十进制长整数[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]u[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]十进制无符号整数[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]lu[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]十进制无符号长整数[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]x[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]十六进制整数[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]lx[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]十六进制长整数[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]o[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]八进制整数[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]lo[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]八进制长整数[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]e[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]用科学记数法([/size][/color][color=black][size=10.5pt]e[/size][/color][color=black][size=10.5pt]记数法)表示的浮点数[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]f[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]浮点数[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]g[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]选用[/size][/color][color=black][size=10.5pt]e[/size][/color][color=black][size=10.5pt]或[/size][/color][color=black][size=10.5pt]f[/size][/color][color=black][size=10.5pt]中较短的一种形式[/size][/color]
[/td][/tr][/table][/align]
[align=left][align=center][color=black][size=10.5pt]表[/size][/color][color=black][size=10.5pt]-printf[/size][/color][color=black][size=10.5pt]的修饰符[/size][/color][/align][/align][align=left][table=98%,#e6e6e6][tr][td=1,1,284][color=black][size=10.5pt]字符[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]定义[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]-[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]左对齐修饰符[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]#[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]显示[/size][/color][color=black][size=10.5pt]8[/size][/color][color=black][size=10.5pt]进制整数时在前面加个[/size][/color][color=black][size=10.5pt]0[/size][/color]
[color=black][size=10.5pt]显示[/size][/color][color=black][size=10.5pt]16[/size][/color][color=black][size=10.5pt]进制整数时在前面加个[/size][/color][color=black][size=10.5pt]0x[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]+[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]显示使用[/size][/color][color=black][size=10.5pt]d[/size][/color][color=black][size=10.5pt]、[/size][/color][color=black][size=10.5pt]e[/size][/color][color=black][size=10.5pt]、[/size][/color][color=black][size=10.5pt]f[/size][/color][color=black][size=10.5pt]和[/size][/color][color=black][size=10.5pt]g[/size][/color][color=black][size=10.5pt]转换的整数时,加上正负号[/size][/color][color=black][size=10.5pt]+[/size][/color][color=black][size=10.5pt]或[/size][/color][color=black][size=10.5pt]-[/size][/color]
[/td][/tr][tr][td=1,1,284][color=black][size=10.5pt]0[/size][/color]
[/td][td=1,1,423][color=black][size=10.5pt]用[/size][/color][color=black][size=10.5pt]0[/size][/color][color=black][size=10.5pt]而不是空白符来填充所显示的值[/size][/color]
[/td][/tr][/table][/align]
页:
[1]