32ビットワードをどのようにバイトスワップするのだろうと思っていました
私はこれらの単語の巨大なバッファを持っており、エンディアンのためにそれぞれの単語をバイトスワッピングする必要があります。
32ビットワードをどのようにバイトスワップするのだろうと思っていました
私はこれらの単語の巨大なバッファを持っており、エンディアンのためにそれぞれの単語をバイトスワッピングする必要があります。
OS が提供する関数を使用するか (Martin Beckett の回答を参照)、または、関心がないのでこれを行う方法を探している場合は、次のコード スニペットに興味があるかもしれません。
x = (x & 0x0000FFFF) << 16 | (x & 0xFFFF0000) >> 16;
x = (x & 0x00FF00FF) << 8 | (x & 0xFF00FF00) >> 8;
OS が提供するhtonl / ntohlを使用する