gpt4 book ai didi

c - “Use of a signed integer operand with a binary bitwise operator”-使用unsigned short时

转载 作者:行者123 更新时间:2023-12-02 10:36:35 26 4
gpt4 key购买 nike

在下面的C代码片段中,检查是否设置了16位序列的前两位:

bool is_pointer(unsigned short int sequence) {
return (sequence >> 14) == 3;
}

CLion的Clang-Tidy给我一个“使用带符号的整数操作数和二进制按位运算符”的警告,我不明白为什么。 unsigned short是否不够签名?

最佳答案

The code for this warning检查按位运算符的任何一个操作数是否被签名。不是sequence引起警告,而是14,您可以通过在末尾附加14来使u无符号来缓解此问题。

(sequence >> 14u)
这个警告是不好的。如 Roland's answer所述,CLion正在解决此问题。

关于c - “Use of a signed integer operand with a binary bitwise operator”-使用unsigned short时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60022741/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com