floatをバイナリ変換後、元の数値に戻したいのですが、なかなかうまくいきません。
どうすれば元の値1.5になるのでしょうか?
C++
1 // floatの値1.5を4バイトのバイナリデータに変換 2 std::vector<char> cmd(4); 3 float value = 1.5; 4 unsigned char* value_ptr = reinterpret_cast<unsigned char*>(&value); 5 6 // char配列に格納 7 for(int i = 0; i < sizeof(float); i++) 8 cmd[i] = value_ptr[i]; 9 10 // 配列をもとの数値に戻したい 11 float test = *reinterpret_cast<float*>(&cmd);
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/04/13 13:48