失礼したします。
質問なのですが、
UCHAR型からTCHAR型に変換したいのですがどうすればいいのでしょうか?
VC++.NET2003 XP MFC使用
TCHAR型は
_UNICODE であるとき WCHAR すなわち wchar_t型(unsigned short型)です。
_MBCS であるとき CHAR すなわち char型です。
これを踏まえて、キャストを考えると、
_UNICODE であるときに情報が落ちてしまいます。
(_MBCSである場合は普通にキャストできます。)
とりあえず、あなたのプロジェクト(ソリューション?)の設定がどうなっているのか確認してください。
・プロジェクト(ソリューション?)のプロパティの文字セットがUnicodeかどうか?
あ、逆でした。 orz
UCHAR型で使っている情報は何が入っているのでしょうか?
(プロジェクトの設定の情報は必要ですが)
>とりあえず、あなたのプロジェクト(ソリューション?)の設定がどうなっているのか確認してください。
>・プロジェクト(ソリューション?)のプロパティの文字セットがUnicodeかどうか?
Unicodeとなっていました。
UCHAR型の中には、バイナリファイルから取得した文字列がはいっています。
ファイルから取得したバイナリの文字コードはなんですか?
> UCHAR型の中には、バイナリファイルから取得した文字列がはいっています。
UCHAR型には文字列は入れれませんので、
UCHAR型配列でしょうか?
結局のところ TCHAR型変数に入れて何をしたいのでしょうか?
CString型に入れるのでしたら簡単なんですけど。
UCHAR s1[] = "あいうえおabcde";
CString s2( s1 );
見たいにできますから。
UCHARの中身はバイナリファイルから読み出してるそうですから、
中身次第で CString に単純に入れても意味があるかどうか....。
> 中身次第
まぁそうですね。
> 文字列がはいっています。
文字列ではないでしょうね。
ツイート | ![]() |