读书人

C语言无符号数和有符号数的转换?解决

发布时间: 2012-03-06 20:47:55 作者: rapoo

C语言无符号数和有符号数的转换?
代码如下:

C/C++ code
#include<stdio.h>int main(void){    int len = -4;    unsigned len2 = 5;        if(len - len2 >= 0)        printf("%d\n", len * len2);    else        printf("0\n");        return 0;}


输出:
Assembly code
-20请按任意键继续. . .

这是神马情况?

[解决办法]
C/C++ code
    if(len - len2 >= 0)        printf("%u\n", len * len2);//你应该用%u打印,而不是用%d打印 

读书人网 >C语言

热点推荐