2010-12-29 12 views
2

Perlでsizeof(Cのバイト長)を取得できますか?Perlでsizeof(Cのバイト長)を取得できますか?

my $byte_length_in_C_of_int = ...; 

編集:

perlpacktut/Integers: 最初の読み取り後、私は "はsizeof(...)" と "$ CONFIG {...}サイズ" 異なるが、場所Iを再読み込みした後も思いました$ Config {intsize}が私にC_intバイト長を与えると仮定します。

+0

perlは自分自身の記憶を管理していますが、私はあなたがこれを得ることができるとは思いません。目的は何ですか? – ykatchou

答えて

6

はい、必要な情報があれば分かります。

バイナリ形式で他のアプリと通信するためのデータ構造を構築する場合は、packにアクセスすることをお勧めします。フォーマットの適切な組み合わせにより、ネイティブまたは特に定義済みのサイズであり、構造体の整列、長さ接頭文字列、TLVなども処理します。

その他の用途の場合は、Configをよくご覧ください。 intsizelongsizeptrsizedoublesizeを、longlongsized_longlongが設定されている場合)、など、様々な種類のサイズのそこの変数があり、longdblsized_longdblが設定されている場合)、/ ivsizeivtype、/ nvsizenvtype(Perlの内部数値型の)、byteorder(あなたはエンディアンを知ることができます)。

関連する問題