CStringで取り出した文字を数字になおすには?

[戻る]
のっち 2001/03/09(金) 16:27:27
こんにちは〜。

ダイアログベースでプログラムを作っています。
ダイアログにエディットボックスを置いて文字を取り出しました。
   CString s1;
   myED1->GetWindowText(s1);
   CEdit* myED1=(CEdit*)GetDlgItem(IDC_EDIT10);
取り出した文字(入力は数字)を数字(INT型)にしたいんですが、
やり方がわかりません。
どうしたらいいでしょうか?
教えてください。

Bun [E-Mail] 2001/03/09(金) 17:32:00
atoi はいかがでしょうか?

のっち 2001/03/09(金) 17:43:49
Bunさんお返事ありがとうございます。
すいませんが、atoiはどうやって使うのですか?
よろしければ教えてもらえないでしょうか?
vc++の本で調べたのですがわかりません。
よろしくおねがいします。

Bun 2001/03/09(金) 17:48:59
Bunです。

CString s1;
CEdit* myED1=(CEdit*)GetDlgItem(IDC_EDIT10);
myED1->GetWindowText(s1);

int num = atoi((const char*)s1);

で試して見てください。

のっち 2001/03/09(金) 18:21:04
のっちです。

Bunさんありがとうございます。
Bunさんが教えてくれたとおりやったらできました。
ありがとうございます。

追加で教えてほしいのですけど・・。
数字(int型)を文字(char型)に換える方法ありますか?

教えてください。
よろしくおねがいします。

Bun 2001/03/09(金) 19:06:11
Bunです。
やりたいこととあっているかどうか?

int a = 19;
CString x;
x.Format("%d", a);

int型の変数aの値をCString型のxに
"19"として変換します。
aに1桁のint変数を代入すればxの値は
1桁の文字として扱えます。

Bun 2001/03/09(金) 19:20:45
Bunです。

>aに1桁のint変数を代入すればxの値は
>1桁の文字として扱えます。

int変数を ---> "int変数を代入"という
表現はおかしいですね

aに1桁の数値を代入すれば ...
ですか。

のっち 2001/03/09(金) 20:13:19
[[解決]]
Bunさんありがとうございました。
Bunさんの教えていただいた通りにできました。
ありがとうございます。

下手な文章ですがこれからもよろしくお願いします。

古いスレッドには追加発言できません。