如何使用八進制表示來打印字符?請注意,這些字符可能是特殊字符(逃逸,背景,箭頭鍵)。Perl如何打印八進制字符?
例如,我想一個函數printoctal',使得:
my $char='P';
printoctal $char;
,我想,要打印120
如何使用八進制表示來打印字符?請注意,這些字符可能是特殊字符(逃逸,背景,箭頭鍵)。Perl如何打印八進制字符?
例如,我想一個函數printoctal',使得:
my $char='P';
printoctal $char;
,我想,要打印120
你想兩件事情:ord
接受一個字符串,並返回該字符串的第一個字符的數字值。也就是說,ord "P"
是80.
然後,你想要printf
或sprintf
。 sprintf "%o", $num
將接收一個數字並返回一個字符串,即該數字的八進制表示,printf
將打印八進制表示而不是返回它。
合起來,printf "%o\n", ord "P"
將打印"120"
。
擊敗我7秒! –
我有點像「%#o」。 – tchrist
爲什麼選擇否定?我不介意他們,因爲他們給了我一個提高我的問題能力的機會。但如果沒有反饋,我不能改進。任何人都有建議?也許我應該給出一個完整的例子?或者問題太新手了? –