我们来看看代码
int a, b, c; ... if ((a + b) > C)
如果我们添加a和b的值并且总和超过int的最大值,那么比较的完整性是否会受到影响?我当时认为可能存在隐式向上转换或溢出位检查,这将被考虑到此表达式的评估中.
C不会做这样的事情.它将无声地溢出并导致可能不正确的比较.您可以自己升级,但不会自动完成.