Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
普段は C で作業していますが、現在はデータの圧縮と解凍に役立つ C++ のライブラリを使用しています。次に、圧縮データを char 配列に入れます。と同じように:
strg[40] = "400000000200000002000200000000ffffff80";
そこから、この配列で表されるバイナリ データを含む stringstream 変数を読み込む必要があります。誰かが私を助けてくれますか?
ケレックのコメントは的を射ています。
std::ostringstream ss; const char *p = strg; if (p) while (*p) { unsigned char x = hex2int(*p) << 4; if (*++p) x |= hex2int(*p++); ss << x; }
ただし、これは入力ストリームのビッグ エンディアン表現を前提としています。入力ストリームが実際にリトル エンディアン表現のマルチバイト ワードを表している場合は、翻訳を変更する必要があります。