問題タブ [atof]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - K&R の atof コードの説明
文字列を int に変換する前に、文字列を double に変換していることを理解しています。ただし、このコードの背後にあるロジックはわかりません。誰かが私のためにこれを少し明確にすることができますか? よろしくお願いします。
c - atoi エラーを使用した atof
これは、最初に文字列を整数に変換し、次に整数を 10 で割って、小数点位置を保存した後に実数を取得することにより、文字列を に変換するatof
関数です。float
条件は真ですが、プログラムは小数点の省略を担当する 2 番目の while ループに入りません。
ubuntu14.04でGeany 1.23.1を使用しています
c - atof_beta という名前の atof を実装しましたが、結果は atof と同じではありません
atof_beta.i という名前の atof 関数を作成して実行しましたが、結果は atof の結果と同じではありませんでした。
例: 入力:111111111111111111111111111111111111111111111111111111111111111111111111111
出力:(fabs(val-atof(s)) <= EPSILON) はゼロに等しい。
c - コードのコンパイル中の atof 競合
私は C プログラミングの旅を始めたばかりです。ライブラリの競合に問題があります。以下の私のサンプルコードを見つけてください。
このコードを実行すると、次のコンパイル エラーが発生します。
エラー: 'atof' のタイプが競合しています
CodeBlocks + mingw c コンパイラを使用しています
編集(コメントに応じて):
引数を 1 つダウンロードしたいのですが、double
値を返す可能性があり、atof
なくても機能しstdlib.h
ますが、定義できませんgetline
c++ - より高速で正確な atof はありますか?
更新1
「+49.984367875E-230」を double に変換し、文字列に変換した後、「4.998436788E-229」として出力するにはどうすればよいですか?
比較を行うには、「+49.984367875E-230」を double に変換する必要があります。
string を double に、double を string に変換するときに問題が発生しました。例えば:
このような結果:
では、なぜ stdlibatof
とsprintf
間違った結果が得られたのでしょうか? grisu2 が正しいので、atof
良いと思いますが、sprintf
間違っていますか?
grisu2 を持っているので、**より速くatof
正確な.
grisu2のようなものが欲しいのですが、紙や良い実装はありますか?
c++ - ユーザー入力文字を Double C++ に変換する方法
ユーザー入力文字を取得して double に変換する方法を見つけようとしています。この関数を試してみましたがatof
、定数文字でしか使用できないようです。これを行う方法はありますか?私がやりたいことのアイデアは次のとおりです。
c++ - boost::lexical_cast はスレッドセーフですか?
実際、ブーストのドキュメントでこの質問に対する答えを見つけることができません。私はatof
マルチスレッド環境で使用することに少し偏執的であるため、1 つの提案は、呼び出しを に置き換えることでしたlexical_cast
。lexical_cast
スレッドセーフですか?
c - フロート印刷は余分な数字を与える
float 変数を印刷するのに苦労しています。そこにあるはずのない余分な数字が表示されます。次に例を示します。
これは明らかに間違った出力です。助言がありますか?