2012-05-14 3 views
5

中(ビッグエンディアン)オーダ​​ーの整数:64ビットの「ネットワーク」あなたはパックの使用できるのと同じようにPerlの

N An unsigned long (32-bit) in "network" (big-endian) order. 

「ネットワーク」に64ビット整数を梱包するための任意の方法はありますが(BIG-エンディアン)の順序をPerlで指定しますか?お使いのシステムがQパック・フォーマットをサポートしている場合

+0

あなただけの[パック]で適切なフォーマットを見つけなければなりません( http://perldoc.perl.org/pack.html)のドキュメントを参照してください。 –

答えて

5

、あなたはビッグエンディアンを取得するためにQ>を使用することができます(Perlの5.9.2以降):

% perl -e 'print pack("Q>", 1)' | hexdump -C 
00000000 00 00 00 00 00 00 00 01       |........| 
+0

完璧!私は尋ねる前に修飾語についてRTFMを持つべきです。しかし、ありがとう。 – GoldenNewby

+0

@GoldenNewby実際に私はそれをチェックするまで私はこの1つを知らなかった... – Alnitak

+0

私はこの5.10の機能が大好きです。それは私のためにいくつかの奇妙なパックの問題を解決した。 :) –

関連する問題