在最近的 3.3 更新中,Android Studio
似乎有一个非常烦人的错误,它会在 C/C++ 代码中给出错误警告。
如您在上图中所见,IDE 对每个包含立即数的位操作发出警告信号,即使它是正数也是如此。
摆脱这种烦恼的唯一方法是将立即值“类型转换”为 uint32_t
,这会更烦人。
在 Android Studio
中是否有任何选项可以抑制此类警告?我在我的代码中进行了大量的位操作,这让我现在很烦。
或者这可能是 clang 的错,默认情况下假设任何立即值都是有符号的。是否有编译器选项可以更改它?
最佳答案
本来可以对您的原始帖子发表评论,但我没有代表。这不是错误警告,因为原始代码中的 3 实际上是带符号的整数文字。在 C/C++ 中,默认情况下所有整数文字都是有符号的。要创建无符号文字,您需要添加 U 后缀(例如 3u
或 3U
)。无需使用强制转换即可。
关于c++ - Android Studio 3.3 (NDK) 上的错误警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54361953/