gpt4 book ai didi

c - Objective C 中的数学

转载 作者:行者123 更新时间:2023-11-30 20:16:19 25 4
gpt4 key购买 nike

我遇到了一个我认为很容易解决的问题,但我找不到答案:

long test = 8064269 / 8300000;
NSLog(@"%lu",test);

日志给了我:

0 (should be something near to 1)

稍后我需要对此进行更多数学计算,然后是:

long test = 8064269 / 8300000 * 277;
NSLog(@"%lu",test);

日志给了我:

4294967048 (should be something near to 277)

我做错了什么?

最佳答案

8064269 / 8300000

是整数除法,因为所有操作数都是整数类型。即截掉小数部分,只留下整数部分0。

但即使情况并非如此,您如何期望将小数存储在整数(long)中?同样,分配给整数也会截断结果。首先,你需要

float test = 8064269.0 / 8300000.0;
NSLog(@"%f", test);

关于c - Objective C 中的数学,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12587331/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com