1

重複の可能性:
float/double から int への変換は printf でどのように処理されますか?

main()
{
    printf("%f",1);
}

私が期待した出力は1.000000、つまりint 1double 1.000000にアップキャストされたというものでしたが、それは0.000000. なぜそうなのですか?

4

1 に答える 1

4

フォーマット ディレクティブ (この場合は anintから a %f) に一致しない引数が指定された場合、結果の動作はundefinedになります。

この質問、またはそのバリエーションが定期的に出てき ます。 int を float として印刷するときの printf の動作は何ですか? を参照してください。printf関数に問題がありますか?例/詳細については。

于 2012-08-07T17:47:52.423 に答える