Perl printf 函数



描述

此函数根据 FORMAT 指定的格式打印 LIST 的值到当前输出文件句柄,或者到 FILEHANDLE 指定的文件句柄。

实际上等同于 `print FILEHANDLE sprintf(FORMAT, LIST)`

如果您不需要特定的输出格式,可以使用 print 代替 printf。以下是可接受的格式转换列表。

序号 格式和结果
1

%%

百分号

2

%c

具有给定 ASCII 码的字符

3

%s

字符串

4

%d

带符号整数(十进制)

5

%u

无符号整数(十进制)

6

%o

无符号整数(八进制)

7

%x

无符号整数(十六进制)

8

%X

无符号整数(使用大写字母的十六进制)

9

%e

浮点数(科学计数法)

10

%E

浮点数,使用 E 代替 e

11

%f

浮点数(定点十进制表示法)

12

%g

浮点数(根据值大小使用 %e 或 %f 表示法)

13

%G

浮点数(与 %g 相同,但在适当情况下使用 .E. 代替 .e.)

14

%p

指针(以十六进制打印值的内存地址)

15

%n

将到目前为止输出的字符数存储到参数列表中的下一个变量中

Perl 还支持可选地调整输出格式的标志。这些标志在 % 和转换字母之间指定。它们显示在下表中:

序号 标志和结果
1

空格

在正数前加空格

2

+

在正数前加加号

3

-

在字段内左对齐

4

0

使用零而不是空格右对齐

5

#

在非零八进制数前加 .0.,在十六进制数前加 .0x.

6

数字

最小字段宽度

7

.数字

指定浮点数的小数位数

8

l

将整数解释为 C 类型 .long. 或 .unsigned long.

9

h

将整数解释为 C 类型 .short. 或 .unsigned short.

10

V

将整数解释为 Perl 的标准整数类型

11

v

将字符串解释为一系列整数,并输出为以句点分隔的数字,或者当标志前面有 * 时,从参数中提取的任意字符串分隔的数字。

语法

以下是此函数的简单语法:

printf FILEHANDLE FORMAT, LIST

printf FORMAT, LIST

返回值

此函数

示例

以下是显示其基本用法的示例代码:

#!/usr/bin/perl -w
printf "%d\n", 3.1415126;
printf "The cost is \$%6.2f\n",499;
printf "Perl's version is v%vd\n",%^V;
printf "%04d\n", 20;

执行上述代码后,将产生以下结果:

3
The cost is $499.00
Perl's version is v
0020
perl_function_references.htm
广告