标题:负数赋值给无符号整型
只看楼主
xiang__jie
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2011-8-31
结帖率:71.43%
已结贴  问题点数:7 回复次数:1 
负数赋值给无符号整型
#include<stdio.h>
void main()
{

      unsigned int a = -1;
      unsigned short b = -1;
      int c = -1;
      short d = -1;
   
    printf("%d,%d,%d,%d\n",a,b,c,d);
   
}
请问为什么b的答案和其它的都不同?请仔细说明
搜索更多相关主题的帖子: short 
2011-10-01 14:59
A13433758072
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广东潮州
等 级:小飞侠
威 望:1
帖 子:1182
专家分:2784
注 册:2010-7-22
得分:7 
在32位系统中,int的范围是-2147483648~+2147483647,而unsigned int的范围是0~4294967295
.......................................................................................


在32位,编译器环境下   VC 6.0

#include<stdio.h>
void main()
{

      unsigned int a = -1;  32位
      unsigned short b = -1;  16位
      int c = -1;   32位
      short d = -1;  16位
   
    printf("%d,%d,%d,%d\n",a,b,c,d);
   
}



......................................................


在16位,编译器环境下..WIN-TC  TC2.0   TC3.0



#include<stdio.h>
void main()
{

      unsigned int a = -1;  16位
      unsigned short b = -1;  16位
      int c = -1;   16位
      short d = -1;  16位
   
    printf("%d,%d,%d,%d\n",a,b,c,d);
   
}

一步一个脚印...............................默默地前进.....
诚邀乐于解答c菜鸟问题,的热心网友加入,  QQ群38490319
2011-10-01 23:24



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-351408-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.955301 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved