ホームページ  >  記事  >  バックエンド開発  >  double の入力形式文字は何ですか?

double の入力形式文字は何ですか?

醉折花枝作酒筹
醉折花枝作酒筹オリジナル
2021-05-17 14:38:1523589ブラウズ

scanf ステートメントを使用する場合、double の入力形式文字は "%lf" であり、"%f" は使用できませんが、printf ステートメントを使用する場合は、"%f" を使用できます。%lf はprintf には定義されていませんが、システムはそれを受け入れます。したがって、double 型を使用する場合は、エラーを避けるために「%lf」入力を使用することをお勧めします。

double の入力形式文字は何ですか?

このチュートリアルの動作環境: Windows 7 システム、C 17 バージョン、Dell G3 コンピューター。

(1) printf の %f 指定子は float 型と double 型の両方を出力できます。

「デフォルトパラメータ昇格」ルール(printfなどの関数の変数パラメータリストでは、スコープ内にプロトタイプの有無に関わらず適用される)により、float型はdouble型に昇格されます。したがって、printf() は double のみを認識します。

(2) scanf は float 型の場合は %f を使用し、double 型の場合は %lf を使用する必要があります。scanf の場合、状況は完全に異なります。ポインタを受け入れ、ここでは同様の型のプロモーションはありません。

float への格納 (ポインター経由) は double への格納とはまったく異なるため、scanf は %f と %lf を区別します。

(3) 実際には、%lf は printf では定義されていませんが、多くのシステムはそれを受け入れる可能性があります。移植性を確保するには、%f を使用してください。

double 型を使用する場合は、エラーを避けるために %lf 入力と %f 出力を使用することをお勧めします。

推奨チュートリアル: "C#"

以上がdouble の入力形式文字は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。