Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
なぜNSLog(@"%0.0f", 1.0/10.0);0を出力するのですか?
NSLog(@"%0.0f", 1.0/10.0);
1.0/10.02 つの double 値の除算ではありませんか? なぜ0に丸められるのですか?
1.0/10.0
書式指定子で小数点以下 0 桁を出力するように要求しているためです。
NSLog(@"%f", 1.0/10.0);
0.100000
printf仕様:
a、A、e、E、f、および F 変換指定子の基数文字 [この場合、出力の小数点 - JC] の後に表示される ... 桁数を指定するオプションの精度。 . 精度は、ピリオド ( '.' ) の後にアスタリスク ( '*' ) (後述) が続く形式か、オプションの 10 進数文字列 (ヌル数字文字列はゼロとして扱われる) のいずれかの形式を取ります。