为什么这么简单的程序调试结果都会出错?

[复制链接]
3958|15
 楼主| 与时俱进 发表于 2008-4-9 15:08 | 显示全部楼层 |阅读模式
#include&nbsp;&ltpic.h&gt<br />#include&nbsp;&ltpic16f91x.h&gt<br />float&nbsp;x=0,t=0;<br />void&nbsp;main(void)<br />{<br />while(1)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;x=1.0;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;t=t+1.0;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />x=0;<br />}<br />上面的程序第一次运行到<br />t=t+1.0;<br />这一行时x的结果为什么是-5.831554e-039(无论变量观察窗口还是鼠标指向x)?<br />
zgl7903 发表于 2008-4-9 18:26 | 显示全部楼层

用的什么编译器?还要注意数据使用的标准

  
 楼主| 与时俱进 发表于 2008-4-10 08:43 | 显示全部楼层

mplab v7.30 & HI-TECH PICC V9.5

贴不了图。
 楼主| 与时俱进 发表于 2008-4-10 09:57 | 显示全部楼层

哪位抽空帮忙调试看看

调试上面的程序,看看是否结果也是这样的!<br />我还试了上面的程序,使用KEIL&nbsp;C51调试结果是正常的!
l0p0c 发表于 2008-4-10 14:47 | 显示全部楼层

HI-TECH PICC V9.5

這個東西哪裡有啊?<br />可以分享下不?
笑语人生 发表于 2008-4-10 15:58 | 显示全部楼层

我用mplab v7.30没问题

  
兰天白云 发表于 2008-4-10 17:15 | 显示全部楼层

盗吧的吧,改掉这一句试试看,然后加些代码,再改回来看看

  
richardvip 发表于 2008-4-10 20:38 | 显示全部楼层

6楼真的吗

我用mplabv8.0+盗版picc18v9.5不行和搂住情况一样
 楼主| 与时俱进 发表于 2008-4-11 08:26 | 显示全部楼层

to: 兰天白云

您说的是什么意思?
zhaoyu2005 发表于 2008-4-11 11:04 | 显示全部楼层

应该是PICC的问题

我试了一下这几句在MPLAB7.5+PICC8.05,片子选PIC16F77同样不行,和LZ一样的问题,同时改了一下:<br />x=1.2;&nbsp;&nbsp;&nbsp;&nbsp;<br />t=t+1.3;运行到这一行<br />x=2.1;<br />竟然t为负值
zhaoyu2005 发表于 2008-4-11 11:20 | 显示全部楼层

查了一下,不是软件的问题

是显示格式不同造成,改一下显示格式应该就好了,就是在watch添加变量名后,选中点右键,点Properties,格式(Format)选MCHP&nbsp;Float就差不多了(还是和IEEE格式不一样)。不过拿鼠标看还是不行,不知他们怎么想得,麻烦
zhaoyu2005 发表于 2008-4-11 11:51 | 显示全部楼层

不过试着改了好几个选项

也没有达到标准化显示,烦了,不想试了,等有心情或者使用到再努力吧
 楼主| 与时俱进 发表于 2008-4-11 11:58 | 显示全部楼层

谢谢大家,zhaoyu2005能不能?

详细说说每个相关地方的设置?<br />我的好像设置了也没有用,包括数据格式,高低字节顺序等等。<br />
兰天白云 发表于 2008-4-11 20:09 | 显示全部楼层

本人的程序中还未出现float的变量

  
 楼主| 与时俱进 发表于 2008-4-14 10:27 | 显示全部楼层

请教兰天白云:

带小数点的运算也不用float的变量吗?一定有什么高招!可否赐教?
 楼主| 与时俱进 发表于 2008-4-14 10:30 | 显示全部楼层

问题找到了

变量还是IEEE格式,但是把数据宽度改成24位就正常了。<br />拿鼠标看还是不行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

75

主题

1290

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部