C言語なら俺に聞け(入門篇) Part 46
■ このスレッドは過去ログ倉庫に格納されています
0060デフォルトの名無しさん
2009/03/03(火) 17:20:27SDKで組んでいます.
long型の変数 xdim の値を文字列に変えて,
設定用ダイアログボックスの Edit Controll に
入れる事をしたいです.
以下のように組んでいますが上手くいきません.
long xdim = 12;
char *long2char(long num);
LRESULT CALLBACK SetDlgProc(HWND hDlgWnd, UINT msg, .... ) {
switch(msg) {
case WM_INITDIALOG:
SetDlgItemText(hDlgWnd, IDC_EDIT_X, (LPCSTR)long2char(xdim));
break;
...
}
char *long2char(long num) {
char str[256];
sprintf(str, "%ld\n", num);
return str;
}
文字化け?した文字列が Edit Controll に入力されます.
(LPCSTR)"12" とすると,文字列 12 が入力されます.
ltoa 関数なども調べましたが,sprintf の方が良いと書かれていたのでこちらで書いています.
どのように修正したらよろしいでしょうか?よろしくお願いします.
■ このスレッドは過去ログ倉庫に格納されています