给一个无符号变量赋一个负数,就把这个“负数”的补码当正数对待了(unsigend的级别高于int)——这和给一个浮点变量赋一个整型数时被提升为浮点型一样——这符合C/C++的自动类型转换规则,所以不报错。至输出还是负数恐怕不对,除非你强制为int型输出,否则输出是无符号的。
← 上一条:C语言使用unsigned把负数转换成整数是 下一条:在C语言中将一个很大的正整数赋值给一个int →