機能 hex() Perl

は、Perlプログラミング言語を搭機能 hex().

機能 hex() に変換する番号から進数形式の類ではありません。

次に例を示します。

▶ Run
#!/usr/bin/perl

print hex('0xFF');

プログラムを表示 255.

引数

この機能は hex 与えられない引数の機能が動作 デフォルトの変数 $_:

▶ Run
#!/usr/bin/perl

$_ = '0x100';

print hex(); # 256

その場合の場合変数 $_undef および使用 use warnings;、警告:

▶ Run
#!/usr/bin/perl

use strict;
use warnings;

my $dec = hex();
Use of uninitialized value $_ in hex at script.pl line 6.

標準使用 hex() が通過する単一の引数に使います。

場合、転送機能 hex() 以上では一つの引数ではエラーコード実行を停止いたします。

Too many arguments for hex at script.pl line 3, near "2)"
Execution of script.pl aborted due to compilation errors.

場合に変換する必要がある複数の値を使用でき map:

▶ Run
#!/usr/bin/perl

use Data::Dumper;

my @hex = ('0xA', '0xB', '0x11');

my @dec = map { hex } @hex;

warn Dumper \@dec;

の文字列で始まる 0xがない必要があります。 大文字-小文字の区別がないかどうかについて合理的な ます。

ここではいくつかの例を示します. この例では、すべての呼び出し機能 hex()を返し 同じ値の数2748.

▶ Run
#!/usr/bin/perl

use strict;
use warnings;
use feature qw(say);

say hex('0xABC');
say hex('0XABC');
say hex('0xabc');
say hex('XABC');
say hex('xABC');
say hex('abc');
say hex('AbC');

機能では動かないかもしれませんの数十六進数です。 きの変換など 数に警告:

▶ Run
#!/usr/bin/perl

use strict;
use warnings;

print hex('0x10.8');
Illegal hexadecimal digit '.' ignored at script.pl line 6.
16

戻り値

機能 hex() で返します。

公式文書

ここでは、出力のコマンド perldoc -f hex:

    hex EXPR
    hex     Interprets EXPR as a hex string and returns the corresponding
            numeric value. If EXPR is omitted, uses $_.

                print hex '0xAf'; # prints '175'
                print hex 'aF';   # same
                $valid_input =~ /\A(?:0?[xX])?(?:_?[0-9a-fA-F])*\z/

            A hex string consists of hex digits and an optional "0x" or "x"
            prefix. Each hex digit may be preceded by a single underscore,
            which will be ignored. Any other character triggers a warning
            and causes the rest of the string to be ignored (even leading
            whitespace, unlike "oct"). Only integers can be represented, and
            integer overflow triggers a warning.

            To convert strings that might start with any of 0, "0x", or
            "0b", see "oct". To present something as hex, look into
            "printf", "sprintf", and "unpack".

関連する話題

その他の記事