gpt4 book ai didi

c - 浮点除法返回 inf 和有限值是什么情况?

转载 作者:行者123 更新时间:2023-11-30 14:39:34 25 4
gpt4 key购买 nike

我写了这段代码,但我无法理解为什么这个浮点除法返回 infargs[2] = 2005.0args[2] = 2000 。这是因为我超出了小数点位置边界造成的吗?

#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
int main(int nargs, char **args) {

float t = atoi(args[1]);
float dt = atoi(args[2])/1000;

float nsamples = (t/dt);
printf("%f\n", nsamples);
return(0);
}

最佳答案

你只是被整数除法 (200/1000 = 0) 绊倒了。

更改float dt = atoi(args[2])/1000; -> float dt = atoi(args[2])/1000.0f;

关于c - 浮点除法返回 inf 和有限值是什么情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56041910/

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