1
CGFloat result=100/126;
NSLog(@"%0.5f",result);

上記のコードの出力は0.00000ですが、電卓で確認すると、値は0.79365です。何が問題ですか

4

2 に答える 2

6

問題は、除算の両方のオペランドが整数であり、整数除算が実行され、その結果が0であるためです。適切な値を取得するには、オペランドの少なくとも1つが浮動小数点数であることを確認する必要があります。

CGFloat result=100.0f/126;
于 2012-10-12T10:53:47.377 に答える
1

変数が整数であることが原因である可能性があります。これを行う

CGFloat result=100.0/126.0;
NSLog(@"%0.5f",result);
于 2012-10-12T10:56:36.487 に答える