首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

请教

2012-02-10 
请问:#includestdio.h voidmain(){unsignedintkk0xffffffffprintf( %d ,k)}为何输出-1?#includes

请问:
#include   "stdio.h "
void   main()
{
unsigned   int   k;
k=   0xffffffff;
printf( "%d ",k);

}

为何输出-1?
#include   "stdio.h "
void   main()
{
int   k;
k=   0xffffffff;
printf( "%d ",k);

}
这个才是-1啊。

[解决办法]
第一个k在内存中当然是表示0xffffffff,而不是-1,不过你printf格式输出的时候是按照有符号数来解释的,要输出无符号数应该用%u而不是%d。

热点排行