昨日見た夢を教えて下さい

リストコントロールにchar型の変数の値を数値として表示させたいのですが、charからLPTSTRへの洗練された変換方法がよくわからないです。

char tempChar;
CString tempString;
tempString.Format("%s", tempChar);
LPTSTR lpsz = new TCHAR[tempString.GetLength()+1];
_tcscpy(lpsz, tempString);

こんなプログラムを考えてみたのですが、汚いような気がします。もっと簡単で洗練された変換方法はないのでしょうか?

A 回答 (2件)

wsprintfを使ってはどうでしょうか?



char tmpChar = 100;//表示する数値
TCHAR buf[5];
wsprintf(buf, "%d", tempChar);
    • good
    • 6
この回答へのお礼

ありがとうございます。この方法で解決しました。

お礼日時:2004/06/27 22:54

TCHAR は環境によって char/wchar_t を切り替える型であり、wchar_t そのものではないことをまずお断りしておきます。



変換には A2T マクロを使うと良いでしょう。

char* sz = "xxx";
LPTSTR wz = A2T(sz);

バッファの解放とかも必要ありません。
    • good
    • 5

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A