免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1506 | 回复: 1
打印 上一主题 下一主题

分母是零 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-05-03 15:25 |只看该作者 |倒序浏览
本帖最后由 lixiaogang110217 于 2010-05-03 16:07 编辑

浮点数被零除后报错,按理说不应该报错的。
测试代码:
  1. #include <stdio.h>
  2. int main() {
  3. double a, b;
  4. a=1.0;
  5. printf("BEFORE\n");
  6. b=0.0;
  7. a=a/b;
  8. printf("Result %5.2f\n",a);
复制代码
交叉编译复制到目标板运行后的结果:
  1. BEFORE
  2. Illegal instruction
复制代码
这是怎么回事呢?
实际出错语句:
  1. Program received signal SIGILL, Illegal instruction.
  2. 0x00099a30 in ejsCreateNumberType (ejs=0x1baf10) at ejsLib.c:8753
  3. 8753        ejs->infinityValue->value = 1.0 / zero;
  4. (gdb) bt
  5. #0  0x00099a30 in ejsCreateNumberType (ejs=0x1baf10) at ejsLib.c:8753
  6. #1  0x000d5990 in createTypes (ejs=0x1baf10) at ejsLib.c:30934
  7. #2  0x000d6050 in defineTypes (ejs=0x1baf10) at ejsLib.c:31127
  8. #3  0x000d56e0 in ejsCreate (ctx=0x1bac60, master=0x0,
  9.     searchPath=0x1bad28 "/mnt/jffs2/appweb/src/lib/appweb/bin/modules",
  10.     flags=32) at ejsLib.c:30852
  11. #4  0x000dd0d4 in ejsOpenWebFramework (control=0x1bab38, useMaster=1)
  12.     at ejsLib.c:33936
  13. #5  0x00035978 in maEjsHandlerInit (http=0x1b8b80, path=0x0) at ejsAppweb.c:867
  14. #6  0x00018658 in maLoadStaticModules (http=0x1b8b80) at link.c:38
  15. #7  0x00010f40 in maCreateServer (http=0x1b8b80, name=0x181ff4 "default",
  16.     root=0x181f8c ".", ipAddr=0x0, port=-1) at server.c:455
  17. #8  0x0000bcec in main (argc=1, argv=0xbefc7c64) at appweb.c:233
复制代码

论坛徽章:
0
2 [报告]
发表于 2010-05-04 11:14 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP