Warning[Pe069]: integer conversion resulted in truncation

编程知识 更新时间:2023-05-02 21:15:53

告警原因:

1、数据类型不匹配造成

例如,把大于255的数据传给unsigned char型数据就会出现这样的警告。
举个例子:

解决方法:右值的数值不可超出左值的表达范围。根据左值的数据类型的表达范围,正确赋值。

2、对一个数据的符号位取反也会导致此告警

例如,下图中因为对数据的Bit7取反导致了告警。Bit7是一个8位数据的最高位,也就是符号位,不可取反。

 解决方法:

对0x....数据强制转换成无符号类型数据再做取反操作,告警消失

 注:如果只是定义变量 然后在赋值中对一个数据的符号位取反可能不会告警(或者说告警被编译器优化掉了),例如,在上述代码中只写27行,不写35行(即不调用),就不会告警

更多推荐

Warning[Pe069]: integer conversion resulted in truncation

本文发布于:2023-04-28 17:13:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/efa87e3405d495b8311f3e17f899392c.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:integer   Warning   truncation   resulted   conversion

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 109267文章数
  • 27727阅读数
  • 0评论数