問題タブ [byte-shifting]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1141 参照

c++ - C++ を使用して 6 バイト以上から整数を作成する

私はC++プログラミングが初めてです。6以上から単一の整数値を作成できるコードを実装しようとしていますindividual bytes

私は同じものを実装しましたが4 bytes、それは機能しています

4 バイトのマイ コード:

このコードを使用すると、の値はvalue次の82a12122ようになりますが、6 バイトで実行しようとすると、結果が間違っています。

6 バイトのコード:

の出力値value82a163c2間違っています。必要42a082a12122です。6 Byte期待される出力を取得する方法と、コードの問題点を誰か教えてください。

前もって感謝します。

0 投票する
4 に答える
730 参照

c++ - uint8 配列の int64 への逆シリアル化は失敗しますが、動作するはずです

tcp 経由で int64 を送信し、シリアル化および逆シリアル化する必要があります。

最初に uin64 にキャストします。

それを uint8 配列にバイトシフトします。

次に、配列を uint64 にバイトシフトします

そして最後に int にキャストします。

しかし、入力した値とは異なる値を返します...16進値を確認しましたが、正しいはずです...

コード:

出力:

これを1日解決しようとしてきましたが、問題が見つかりません

ありがとう。