• ベストアンサー

CString型からdouble型への変換

C++は初心者です。VC4.0を使っていますがMFCなどは使っていません。 CString型の変数をint型やlong型への変換はなんとかできたのですが、double型へ変換することができずに困っています。atofを使えばいいのだと思い下記のように記述したのですが、コンパイルするとエラーがでます。   CString sample = "0.234";   double i;   i = atof((const char*)sample); error C2440: 'type cast' : cannot convert from 'class CString' to 'const char *' どう直せば無事にdouble i に0.234を格納できるのでしょうか?よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • sha-girl
  • ベストアンサー率52% (430/816)
回答No.1

i = atof( (const char*)sample.GetBuffer(0) );

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.2

> VC4.0を使っていますがMFCなどは使っていません。 MFCを使っていないとのことですが、CStringは自作のクラスでしょうか? エラーの内容からすると、CStringにconst char*への変換関数がないことが原因のようですが、CStringの仕様がわからないと回答のしようがありません。

すると、全ての回答が全文表示されます。
CDラベル印刷に関する問題
このQ&Aのポイント
  • 「DCP-N928N」のCDラベル印刷で問題が発生しています。レーベル印刷用のアプリケーションの使用方法がわからず困っています。
  • 質問者はWindows10を使用しており、無線LANで接続しています。また、関連するソフトとしてデキスパートを使用しています。
  • 質問はブラザー製品に関するものですが、電話回線の種類については明示されていません。
回答を見る

専門家に質問してみよう