Objective-C双重长计算

时间:2013-02-17 22:13:20

标签: ios objective-c cocoa-touch

我正在尝试计算一个长整数除以一个整数,以便给出我期望的双精度数,虽然我得到的结果是0.我正在使用的代码......

double daysByYear = daysSinceBirthdayToService/365;
NSLog(@"%d", daysByYear);

在此代码中,daysSinceBirthdayToService变量是一个Long Double,可以使用以下代码进行NSLogged (long)daysSinceBirthdayToService

它在头文件中声明为

的属性
@property (nonatomic) NSInteger daysSinceBirthdayToService;

有人可以帮我解决这个问题,谢谢!

3 个答案:

答案 0 :(得分:4)

问题在于/两个长者之间将进行整体划分。

要强制浮点除法,至少需要将其中一个操作数强制转换为加倍。

e.g。

double daysByYear = daysSinceBirthdayToService/(double)365;

或者如果你有一个文字,通过添加一个小数点

double daysByYear = daysSinceBirthdayToService/365.0;

答案 1 :(得分:0)

double daysByYear = daysSinceBirthdayToService/365.0;

答案 2 :(得分:-1)

可以是%d输出十进制数而不是双数吗?