c++条件下的奇怪行为

Strange behavior if condition c++

本文关键字:条件下 c++      更新时间:2023-10-16

我有这个简单的if条件,其中计数总是> 0

if((source - target) > (count * 10 /100)){
  .. do something
}

但是我有这个奇怪的行为代码执行" .. do something"时,差异是<0,为什么? ?

编辑:source, target, count均为int

打印出源、目标、计数。然后输出(源-目标)> (count * 10/100)的结果。然后你可以确定你是否犯了错误。或者c++语言有bug(概率<0.000000000000000000001)。请确保count是有符号的