gpt4 book ai didi

c - printf() 函数异常

转载 作者:行者123 更新时间:2023-11-30 19:54:21 24 4
gpt4 key购买 nike

我在处理 int 和 float 数字时发现 print 函数出现异常行为。

float y = 9/5;
printf("%f", y);

printf("%f", 9/5);

第一个打印语句输出 1.000000,这是可以接受的,而其他输出则为 0.000000。为什么两种情况下的输出不同?

最佳答案

9/5 是一个整数,其值为 1。

printf("%f", 9/5); 是未定义的行为,因为 %f 需要一个 double 但您提供了一个 int

尝试printf("%f", 9.0/5);,输出将是您所期望的。

更一般地说:如果 printf 的格式说明符与参数不匹配,则行为未定义;在大多数情况下,您会得到意想不到的输出。

关于c - printf() 函数异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57176184/

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