0

私は次のことをしようとしています:

CCombobox m_obs;
CString temp;

m_obs.GetWindowTextA(temp);
double newObs = strtod(temp, NULL);

ただし、からへstrtod()の適切な変換関数が存在しないというエラーが発生します。CStringconst char *

文字列をコンボボックスからダブルに変換するにはどうすればよいですか?

4

3 に答える 3

2

代わりCStringAに、Ansiバージョンの使用を強制してみてください。そうでない場合、CStringは、UNICODEがデフォルトであるコンパイラスイッチに依存します。

于 2012-11-22T13:35:08.803 に答える
1

strtod()const char * str最初の引数を期待してください。やったほうがいい:

const char* cstr = (LPCTSTR)temp;
double newObs = strtod(cstr, NULL);
于 2012-11-22T11:43:38.343 に答える
1

Thanks for your replies.

For UNICODE projects, do the following:

double NewObs = wcstod(temp, NULL);
于 2012-11-22T13:29:14.683 に答える