c - 为什么 Splint(C 代码检查器)在将 float 与 int 进行比较时会出错?

标签 c lint splint

两者都是数学值,但 float 确实更精确。这是错误的唯一原因 - 精度差异吗?还是存在其他潜在(且更严重)的问题?

最佳答案

这是因为整数值集不等于“int”和“float”类型的浮点值集。例如,浮点值 0.5 在整数集中没有相等值,整数值 4519245367 可能不存在于 float 可以存储的值集中。因此,检查器将此标记为需要由程序员检查的问题。

关于c - 为什么 Splint(C 代码检查器)在将 float 与 int 进行比较时会出错?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38027/

相关文章:

java - 如何在 Visual Studio Code 中禁用 Java 中未使用的导入的警告?

c - 这段代码是关于什么的?

Android字符串占位符不同的语言

c++ - 通过 select() 实现非阻塞 udp 套接字

cmake clang-tidy(或其他脚本)作为自定义目标

c - 在夹板的帮助下消除代码中的安全缺陷

c - 如何将 Gradle 连接到自定义 EXE 并 Hook 其控制台输出?

c++ - 指针数学与数组索引

c - windows中 "./"相当于 ".exe"扩展?