如题所述
unsigned long x,y;
x=9999;y=9999;
x*=y;
Y=X%100;
x\=100;
if (y>=50)x++;
//X中为结果,因为没有浮点又要保留两位小数,所以用大100倍的整数表示。追问
x=9999;y=9999;
x*=y;
Y=X%100;
x\=100;
if (y>=50)x++;
//X中为结果,因为没有浮点又要保留两位小数,所以用大100倍的整数表示。追问
为什么我定义两个长整型变量后编译出现下面这结果?怎么解决呢?
Program Size: data=60.0 xdata=0 code=2645
LINK/LOCATE RUN COMPLETE. 0 WARNING(S), 0 ERROR(S)
*** FATAL ERROR L250: CODE SIZE LIMIT IN RESTRICTED VERSION EXCEEDED
MODULE: D:\软件\KEIL\C51\LIB\C51S.LIB (-----)
LIMIT: 0800H BYTES
Target not created
程序本身是0警告0错误,而下面报的这个是keil的限制,估计你用的是试用版,最多只能编译2K大小以内的程序,而你的程序已经2645字节了,超过了这个限制所以报这个错误。你用正式版即可。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2012-08-18
你讲的意思是,,不用float数据类型,,吧,,个人感觉可以做将99.99乘以100变成整型然后让9999X9999结果赋给长整型变量,,在显示等的时候做相应打点,,取舍就可以了