Perl でpack()関数を使用してデータをエンコードしたいと考えています。次に、パック構造を別のパック構造と比較したいと思います。この比較は、このパックされた構造体のバイト値に対して行う必要があります。
ドキュメントによると、cmpは現在のロケールを使用して文字列を比較する方法を決定します。しかし、比較にインテリジェンスを適用したくありません。memcmp() に最も近いものが欲しい。明らかに<=>
、パックされたオブジェクトは数値ではないため、比較には使用できません。
Perlでパックされた文字列を比較する最良の方法は何ですか?
補足: Perl での効率的な並べ替えに関するこの記事を読みました。この記事では、単純な並べ替え関数が構造の比較に memcmp のようなアルゴリズムを使用していることに注意しています。ソートを使用せずにこのような比較を行う方法を考えています。