如何在 if 语句中将 unsigned int 用作普通 int

how to use a unsigned int as a normal int in a if stament

有没有办法在 if 语句中使用两个无符号整数和一个有符号整数?

unsigned int a = 0, b = 1;
if (a - b > - 1)
    ++a;

怎么样:

if (a + 1 > b) {
  ++a;
}

(如果您的值完全不受约束,您可能需要检查并处理 wrap-around,即 a + 1 == 0 的情况。)

甚至(感谢@M.M):

if (a >= b) {
  ++a;
}