如何使用八进制表示法打印字符?请注意,这些字符可能是特殊字符(转义,背景,箭头键)。
例如,我想要一个'printoctal'函数,例如:
my $char='P';
printoctal $char;
我想打印120
答案 0 :(得分:7)
您需要两件事:ord
接受一个字符串,并返回该字符串的第一个字符的数值。也就是说,ord "P"
是80。
然后,您需要printf
或sprintf
。 sprintf "%o", $num
将获取一个数字并返回一个字符串,该字符串是该数字的八进制表示,printf
将打印八进制表示而不是返回它。
printf "%o\n", ord "P"
一起打印"120"
。