- ベストアンサー
charからLPTSTRへの変換方法
リストコントロールにchar型の変数の値を数値として表示させたいのですが、charからLPTSTRへの洗練された変換方法がよくわからないです。 char tempChar; CString tempString; tempString.Format("%s", tempChar); LPTSTR lpsz = new TCHAR[tempString.GetLength()+1]; _tcscpy(lpsz, tempString); こんなプログラムを考えてみたのですが、汚いような気がします。もっと簡単で洗練された変換方法はないのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
wsprintfを使ってはどうでしょうか? char tmpChar = 100; //表示する数値 TCHAR buf[5]; wsprintf(buf, "%d", tempChar);
その他の回答 (1)
- nyan5504
- ベストアンサー率42% (6/14)
回答No.2
TCHAR は環境によって char/wchar_t を切り替える型であり、wchar_t そのものではないことをまずお断りしておきます。 変換には A2T マクロを使うと良いでしょう。 char* sz = "xxx"; LPTSTR wz = A2T(sz); バッファの解放とかも必要ありません。
お礼
ありがとうございます。この方法で解決しました。