首页 > 用户发贴区 > 编程问题提问区 > C高手来帮我看下啊,谢谢!!!
2008
05-28

C高手来帮我看下啊,谢谢!!!

#include<stdio.h>
main()
{
      int b,c,d;
      unsigned u;
      b=-3;
      c=65533;
      d=0xabcde;
      u=-2;
      printf(“b=%d,b=%u\n”,b,b);
      printf(“c=%d,c=%u\n”,c,c);
      printf(“d=%d,d=%x\n”,d,d);
      printf(“u=%d,u=%u\n”,u,u);
      getchar();
}


书上的一个“整形常量向整形变量赋值”的示例,输出应为:


b=-3,b=65533   c=-3,c=65533   d=-17186,d=bcde   u=-2,u=65534


我用DEV-CPP编译为什么输出结果是:


b=-3,b=4294967293   c=65533,c=65533  d=703710,d=abcde 


u=-2,u=4294967294


请问问题出在哪了啊?是不是编译器一定要用TC啊?


C高手来帮我看下啊,谢谢!!!》有 5 条评论

  1. blackwx 说:

    难道是编译器的原因??TC界面太那啥了,实在是不想用……

  2. redmay1986 说:

    我用Rarnu c执行的没有问题

    至于是不是非要用TC编译器我不太清楚!~

  3. 593431567 说:

    不是的 

  4. 593431567 说:

    因为你那个编译器的整型是32位的  

  5. blackwx 说:

    哦,谢谢,那能通过设置改变吗?

留下一个回复