問題タブ [gofmt]

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.

0 投票する
1 に答える
905 参照

go - goでバックスラッシュを印刷するには?

次のコード スニペットがあります。

私はこれを得る:

バックスラッシュが重複しているのはなぜですか? このウェブサイトによると\\、フォーマット内で生成されるはず\です。

0 投票する
1 に答える
113 参照

go - fmt.Printf("%f\n",x) は Float64 を Float32 に丸めますが、fmt.Println(x) は丸めません

私は辞書を使っていくつかのテストに取り組んでいました。これを行うために、データベースから必要な Float64 値をコピーしてテスト構造体配列に貼り付ける形式で出力しましたが、テストが失敗したときに値が異なることに気付きましたが、のみによって0.0000000000002

次に、値を確認するために、ループで次のように記述しました。

そして、次の値が返されました。

ドキュメントを確認したところ、Float64 に特別な表記法があること、または %f が Float32 の Float64 を置き換えることを示すものは何も見られませんでしたが、%vorを使用しても問題は発生せず、適切な場合に%g使用することがドキュメントで指定されています。%f.

どちらかを使用して12の精度を指定しても問題はありませんが%.12f、ドキュメントではデフォルトの精度が指定されていません。

なぜこれが起こるのですか?

編集: これは複製と同じ問題ですが、Adrien の説明がより詳細であると思います。