前提・実現したいこと
windowsのメモ帳で作成したファイル(ユニコード ビッグエンディアンで保存)を開いて表示するプログラムを作り、デバッグをしていたのですが、デバッグ中のメモリ内容の表示について疑問があります。
読み込んだ文字列はLPTSTR lpUniText;で宣言した変数に保存してあります。
ファイルの内容が「テスト」という文字列の場合lpUniTextが指すアドレスを調べると、メモリウィンドウにはFE FF 30 C6 30 b9 30 C8 00 00というデータが表示されました。
しかしソースコード中のlpUniText[1]という部分を選択してマウスカーソルをそこに移動するとそこには0xc630という値が表示されました。
ビッグエンディアンは上位バイトからメモリに並べるはずなのでどちらの表示もlpUniText[1]のデータは30 C6になると思うのですがどうしてこの2つの表示は異なるのでしょうか?
補足情報(FW/ツールのバージョンなど)
Microsoft Visual C++ 2010 Express C言語
WIN32 ユニコードビルド Windows7
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/11/11 10:28
2019/11/11 15:07
2019/11/12 09:48