c语言程序设计

[复制链接]
查看11 | 回复2 | 2009-7-11 12:16:35 | 显示全部楼层 |阅读模式
a=65535,177777,ffff,65535b=-2,37777777776,fffffffe,4294967294这是我在vs环境下运行你的程序的结果,不一样吧,所以说,像int,uint等等数据占用的字节和范围是随着编译环境的不同而不一样的。你的int值应该是编译的时候分配了2字节,这样只能表示-32768到32767,所以当你用int(也就是d%)表示时,只能显示负数,超出他的表示范围,溢出了。应该用的是turbo c编译器吧?我的vs表示int值是用4字节,所以范围就大很多,这个数字并不会造成我的溢出。正如你所说的,那些是8进制表示和16进制表示,具体进制转换还是建议你自己看看书吧,这一块对于编程挺重要的,所以...
回复

使用道具 举报

千问 | 2009-7-11 12:16:35 | 显示全部楼层
我在VC2008上的运行结果是a=65535,177777,ffff,65535b=-2,37777777776,fffffffe,4249697294应该是编译器和操作系统的不能造成的负数部分请参考下"反码"...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行