OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

浮動小数点から文字列の変換の時に

  • すぐに回答を!
  • 質問No.177486
  • 閲覧数620
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 48% (121/248)

浮動小数点floatからStrへの変換をgcvt関数で行なうときに、値が小さいと文字列0.00005が欲しいのに5e-05になってしまいます。
どうすればよいですか?教えてください。
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.1
レベル12

ベストアンサー率 75% (398/526)

私はgcvtという関数を知りませんが、名前と結果から想像するに、
  sprintf( str, "%1.g", f );
ということをしているのではないでしょうか。
(f に 0.00005 を代入して実行すると、str は "5e-05" になります。)

printf 系の関数で変換文字に "g" または "G" を指定すると、
・指数部が -5 以下か、有効精度以上のときは、e または E 変換を行い、
・それ以外のときは、f 変換を行います。
※ f 変換は「0.00005」のような小数形式に、g/G 変換は「5e-05(または5E-05)」のような指数形式になります。

素直に f 指定の sprintf 関数を使うか、お手持ちのライブラリから「fcvt」という名前の関数を探すかしてみて下さい。(多分こんな名前になっていると思う。)
お礼コメント
kenichi

お礼率 48% (121/248)

回答ありがとうございましたm(__)m
なんとかかんとか解決することが出来ました。ありがとうございます。
投稿日時 - 2001-12-18 19:00:47
-PR-
-PR-
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ