• ベストアンサー

double型をfloat型に強制変換

ある計算シミュレーションにおいてdouble型で不動点少数の変数を 宣言して使用しています。たくさんの変数をすべてfloat型に 変更したいのですが、コンパイラオプション (-r16)のような もので簡単に変換できますでしょうか? コンパイラはIntel c++ですがやgnu c++などを使用しています。

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

  • ベストアンサー
  • plh
  • ベストアンサー率50% (4/8)
回答No.3

いくつ変数があるのか分かりませんが、数が少ないならエディタで修正すればよいし、ちょっと実験なら、 #define double float でよいかも。 最初から、 typedef double float_type; と書いておいて、ソースコード自体を float_type を使って記述し、 typedef float float_type; で切り替えるのか良いかも。

flex1101
質問者

お礼

回答有難う御座いました。 #define double floatをためしてみます。 今後、一から作るコードの場合、float_typeを使ってみます。

その他の回答 (2)

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

仮にdoubleの精度をfloatと同じに出来たとしても、型はあくまでもdoubleのままのはずです。 C++では、型がdoubleなのかfloatなのかによって、多重定義の解決等に影響がでます。コンパイルオプションではなく、エディタ等で置換する方が無難かと思います。

flex1101
質問者

お礼

回答ありがとうござました。

  • asuncion
  • ベストアンサー率33% (2127/6289)
回答No.1

エディタの全置換機能か何かを使って、 doubleという単語をfloatという単語に 一斉置き換えする、というのはダメですか?

flex1101
質問者

お礼

回答有難う御座います。 ソースファイルが膨大にあるソフトでして、簡単にできないかということで質問いたしました。

関連するQ&A

専門家に質問してみよう