0

なぜNSLog(@"%0.0f", 1.0/10.0);0を出力するのですか?

1.0/10.02 つの double 値の除算ではありませんか? なぜ0に丸められるのですか?

4

1 に答える 1

4

書式指定子で小数点以下 0 桁を出力するように要求しているためです。

NSLog(@"%f", 1.0/10.0);

0.100000

printf仕様

  • a、A、e、E、f、および F 変換指定子の基数文字 [この場合、出力の小数点 - JC] の後に表示される ... 桁数を指定するオプションの精度。 . 精度は、ピリオド ( '.' ) の後にアスタリスク ( '*' ) (後述) が続く形式か、オプションの 10 進数文字列 (ヌル数字文字列はゼロとして扱われる) のいずれかの形式を取ります。
于 2012-05-02T20:33:38.373 に答える