新微赢技术网
标题:
这个问题怎么解决呢?!~
[打印本页]
作者:
first
时间:
2009-11-4 00:19
标题:
这个问题怎么解决呢?!~
float m_nnum;
if(m_nnum==(int)m_nnum)
m_nnum=(int)m_nnum/10;
else
{
int i=1,j=1;
while(m_nnum!=(int)m_nnum)
{
m_nnum=m_nnum*10;
i++;
}
m_nnum=(int)m_nnum/10;
for(;j<=i-2;j++)
{
m_nnum=m_nnum/10;
}
}
这是程序中某个函数,但是可能这里的数据类型转换太多,导致程序运行数目大的时候(1.1234567)就程序死了,没反应没提示,要结束任务才能关掉。不知道是不是这个原因呢?~!有可能是其他问题吗(没加这个函数之前程序运作正常)?~!
作者:
X~iao~ping
时间:
2009-11-4 00:19
这个程序写的实在没什么意义
作者:
踏浪
时间:
2009-11-4 00:19
楼上的小黑同志, 又看到你啦, 哈哈哈。
我也不知道楼主的代码到底要干吗的, 感觉思路完全有问题。 就说那个 if 判断, 左边是float 类型, 右边强制转换为 int 类型, 然后再比较是不是相等, 在这样的情况下, 这个比较就有问题了, 一个浮点型, 一个是整型, 怎么可以比呢? 楼主, 你说说, 你到底想实现什么, 然后我帮你写个函数就可以了, 或许还可以用现成的函数。
作者:
毅歌
时间:
2009-11-4 00:19
那天第一次听你说小黑,
我不知道小黑何方高人,
后来你告诉我他叫Dark什么的,
我才知道,那是一个和我长的很像的家伙..
呵呵,那是俺家兄弟...
搞笑了不是..哈哈哈..
作者:
爲眀天活着
时间:
2009-11-4 00:19
Darkhero的那个帖子
http://bbs.bc-cn.net/viewthread.php?tid=47881&extra=&page=3
作者:
大陆猪头
时间:
2009-11-4 00:19
原来是你家兄弟, 不错, 不错.
看来都是厉害角色.
作者:
人杰地灵
时间:
2009-11-4 00:19
啊!~我是想要做一个退格键啊~!
那个if里面的是判断一个数是不是整数哦~!
如果是小数就把小数乘以10,在消去后面一位,再除以10,变为原来的数再退一位~!
我知道这样的类型转换有问题,但不知道有什么办法呢?除了把数改为字符串~!
作者:
♀鈊亂ゞ鎵伙
时间:
2009-11-4 00:19
浮点数最多应该只能显示六位小数
我看这个程序应该没有问题,但我在运行超过四位小数的时候不能实现退格的作用.
作者:
简单快乐
时间:
2009-11-4 00:19
注意小数点四位以后要用到科学计数法,可能问题出在这.
欢迎光临 新微赢技术网 (http://bbs.weiying.cn/)
Powered by Discuz! X3.2