返回列表 发帖

c语言范例开发大全\实例013\代码1\输出结果与书答案不一样

void main() {
        int a,b;                                        /*定义整型变量*/
        unsigned u1,u2;                         /*定义无符号型变量*/
        u1=0;                                        /*赋值*/
        a=32767;
        b=a+1;
        u2=u1-1;
        printf("%d,%d\n",a,b);                 /*以整型形式输出*/
        printf("%u,%u\n",u1,u2);                 /*以无符号型形式输出*/
}

书中:

32767,-32768
0,65535

我的:
32767,32768
0,4294967295
分享到: QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友

我的环境是:vc6.0    win7 32 位

TOP

1# zachary


没事。不同的编译器、不同的系统环境,对整数定义的范围不一致。

TOP

可以详细讲解一下吗?谢谢了

TOP

4# zachary


这个主要和计算机的字长和编译器有关。例如,对于TC开发的时候,电脑字长为16位。所以整型的范围就从正负2的15次方。而VC是32位的程序,所以整型范围就像哦那个正负2的31次方。

TOP

嗯,我明白了,谢谢

TOP

返回列表