首页 > 编程知识 正文

resulted at,Java integer

时间:2023-05-03 06:41:42 阅读:171094 作者:3066

警报原因:

1、数据类型不一致导致

例如,如果将大于255的数据传递给unsigned char类型的数据,则会出现这样的警告。

举个例子:

解决方案:右数值不能超过左数值的表达范围。 根据左值数据类型的表示范围正确赋值。

2、如果将一个数据的符号比特取反,也会引起该警告

例如,在下图中,由于反转了数据位7而发生了警报。 Bit7是8位数据的最高有效位,也就是符号位,不能相反。

解决方法:

0x…将数据强制转换为无符号类型的数据后进行逆操作,警报将消失

注:仅定义变量,在代入中取反1个数据的符号位,可能不会发出警告。 这意味着编译器可能已优化了警告。 例如,如果上面的代码只写27行,不写35行,就不会警告你。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。