unionというものが、どんな事かも分からなかったのですが、メンバー変数が同じ記憶域を使うということ
だけは分かりました。short int とdoubleが同じ記憶域を使うことのイメージが掴めなくて別々のunion
になってしまいました。一つのunionに纏めることができるか?分かりません。
Herbert Schildt著「独習C++」の57P演習2の答えはSIbits::SIswapbyteの部分です。16ビットの
上のbyteと下のbyteを入れ替えるのですから、そうなるでしょう。