小数点以下1桁を取得してdoubleとして格納しようとしています。例えば用 : -小数点以下1桁を取得Objective C
float A = 146.908295;
NSString * string = [NSString stringWithFormat:@"%0.01f",A]; // op 146.9
double B = [string doubleValue]; // op 146.900000
私は、二重またはフロート形式で146.9として出力したい...、複製またはこの出力に対する答えが与えられていることを確認しますdownvoting前に... おかげ
編集: - なり、ここで
NSString * str = [NSString stringWithFormat:@"%0.01f",currentAngle];
tempCurrentAngle = [str doubleValue];;
tempCurrentAngle = tempCurrentAngle - 135.0;
if (tempCurrentAngle == 8.7) {
NSLog(@"DONE ");
}
currentAngleがcontinueTrackingWithTouch方法から来ているが、それはループさえtempCurrentAngle値が変化した場合では入らないfloat..here 8.700000に。あなたは、あなたが、なぜそれがif caluse
に入っていなかったという考えを取得します行ずついったんデバッグする場合
数学的に '146.9'と' 146.900000'は同じです!なぜあなたは '146.9'が必要なのでしょうか?この値を表示する必要があるときは、文字列で変換しなければならないので、必要な小数点を表示することができます! – Lion
私は数学を実装し、さらにそれを比較する必要があります... –
あなたが '146.9と146.900000'を比較するなら、それは等しいでしょう! – Lion