Perl 内置函数 chr/ord 示例

2574阅读 0评论2009-01-18 MMMIX
分类:

Perl 内置函数 chr/ord 示例

Perl 的内置函数 chr/ord 可用来在 Unicode code point(为一数字)和 character 之间转换,下面是使用它们的两个简单示例。

#!/usr/bin/perl

# t0.pl

use strict;
use warnings;

binmode (STDIN, ":utf8");
binmode (STDOUT, ":utf8");
while(<>){
    chomp;
    my $c = ord;
    printf "$_ = 0x%x\n", $c;
}



#!/usr/bin/perl

# t1.pl

use strict;
use warnings;

binmode (STDOUT, ":utf8");
while(<>){
    chomp;
    my $c = chr(hex);
    print "$_ = $c\n";
}


注意在 t1.pl 中,由于假设读入的数字为 16进制,因此需要用 hex 转换一下。

例子
$ cat t0

$ cat t1
0x263a
$ ./t0.pl < t0
☺ = 0x263a
$ ./t1.pl < t1
0x263a = ☺



BTW,虽然这种小例子程序没有必要用 use strict; use warnings; 但应养成用它们的习惯,尤其是借助一些脚本,例如 建立各种脚本的脚本
上一篇:Perl 中的陷阱
下一篇:清华影印的 OS design and implementation(3rd) 竟然没有索引