我在我的 C99 代码中使用了类似以下的内容:
uint64_t x = 1000ULL * (5U * 1000U);
我假设U
总是意味着unsigned int
。
我的静态代码检查器现在在这里抱怨隐式类型转换,这是正确的。但是它并没有抱怨unsigned long long
vs unsigned int
。相反,它抱怨unsigned char
vs。unsigned short
所以我的问题是:上面的这些文字可以解释为C99 之外的unsigned long long
其他东西(尤其是更小的东西)吗?unsigned int