C语言中当无符号数遇到符号数

unsigned int uint_1 = 1;
int int_n1=-1;

if( uint_1 > int_n1 ) printf("都变为有符号数\n");
else printf("都变为无符号数\n");

if( (signed)uint_1 > int_n1 ) printf("都变为有符号数\n");
else printf("都变为无符号数\n");

  执行结果为:

都变为无符号数
都变为有符号数

  可以见得当无符号数与符号数一起运算时,符号数会被默认转换为无符号数

posted @ 2015-02-22 11:44  cntsw  阅读(226)  评论(0编辑  收藏  举报