我很想知道如果我给无符号变量赋一个负值会发生什么.
代码看起来有点像这样.
unsigned int nVal = 0;
nVal = -5;
Run Code Online (Sandbox Code Playgroud)
它没有给我任何编译器错误.当我运行程序时,nVal分配了一个奇怪的值!是否可以将某个2的补码值分配给nVal?
如果一个人需要比较int x有unsigned int y哪些是比较安全/更好/中更好的C99与gcc 4.4+:
(unsigned int)x == yx == (int)y有关系吗?