未警告除以零时的“警告:被零除[-Wdiv-by-zero]”

时间:2019-05-20 10:55:50

标签: c gcc gcc-warning

我在下面的简单编码练习中的代码会产生“被零除”的警告,我想知道为什么。

#include <stdio.h>

int main() {

  for(int i = 0; i < 100; i++) {
    printf("celsius=%d fahrenheit=%d\n", i, (i/(5/9))+32);
  }

  return 1;

}
temps.c: In function ‘main’:
temps.c:6:45: warning: division by zero [-Wdiv-by-zero]
     printf("celsius=%d fahrenheit=%d\n", i, (i/(5/9))+32);

1 个答案:

答案 0 :(得分:1)

我在写这个问题时意识到这是因为我应该写5.0/9.0,因为C处理的a way中的整数除法是我没想到的。无论如何都将其发布,因为我找不到与SO上的特定问题相关的特定错误。