VS2012中的R6002 - floating point support not loaded错误

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               

VS2012中的R6002 - floating point support not loaded错误

一.问题描述

 由于项目的需要,最近在VS2012中调试算法.出问题的代码片段如下(由printf函数引起的runtime error):

fprintf(fpWrite2,"里程: %010f   ",stpSample->buf[12] + stpSample->buf[13] * 256 + stpSample->buf[14] * 65536l + stpSample->buf[15] * 256 * 65536l);

其中buff是unsigned char型的数组.



二.解决方案

 将要打印的数据强制转换为float型,或者在前面为一个浮点型数据复制(但要注意不要被编译器优化掉).

三.问题分析

错误信息为未加载浮点支持.应用程序需要浮点库,但该库没有链接进程序中,通过检查下面的可能原因进行修复:

  1. 该程序通过选项(如 /FPi87,该选项要求有协处理器)被编译或链接,但该程序运行在一台未安装协处理器的计算机上。
  2. printf 或 scanf函数的格式字符串包含浮点格式规范,而该程序不包含任何浮点值或变量。
  3. 编译器仅当必要时才通过加载浮点支持以最小化程序大小。编译器无法检测到格式字符串中的浮点格式规范,因此编译器未加载必要的浮点例程。
  4. 使用浮点参数以符合浮点格式规范,或在程序的其他地方执行浮点赋值。该操作将导致加载浮点支持。
  5. 在由混合语言编写的程序中,当程序进行链接时在 FORTRAN 库之前指定了 C 库。重新链接并最后指定 C 库。
 许多微软的运行时库函数需要从数学协处理器或编译器自带的浮点库中获得浮点支持.仅当需要时才加载浮点支持功能.当在格式化字符或printf和scanf函数中使用一个浮点类型说明符(比如%f)时,你必须在参数列表中指定一个浮点类型的数或者一个浮点类型的数据指针,从而告诉编译器需要加载浮点类型支持.微软运行时库中的数学函数和UNIX V中数学函数的一场处理方式一样.
 通过上面的分析,文章开头的问题一目了然,同时也给出了解决方法.

四.win32.pinfi病毒病毒引起的问题

 这个不是本文的重点,感兴趣的读者可以参考http://hi.baidu.com/f0xriver/item/1e6f38c003ac8bba0c0a7b2f.

           

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow
这里写图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
R6002 - floating point support not loaded错误是指在编译或运行C语言程序时,遇到了浮点支持未加载的问题。这个错误通常会在使用浮点格式规范的函数(比如printf和scanf)时出现,而程序没有实际的浮点值或变量。此时,编译器未加载必要的浮点例程,导致出现该错误。 造成此错误的原因有几种可能性。首先,编译器在编译或链接过程可能指定了需要协处理器的选项(如/FPi87),但在运行该程序的计算机上未安装协处理器。其次,可能是程序的格式字符串包含了浮点格式规范,但没有提供相应的浮点参数或浮点数据指针。编译器无法检测到这种情况,因此未加载必要的浮点支持。解决方法可以是在程序的其他地方执行浮点赋值操作,或者在参数列表指定一个浮点类型的数值或数据指针来告诉编译器需要加载浮点支持。 需要注意的是,微软的运行时库函数以及UNIX V的数学函数都需要从数学协处理器或编译器自带的浮点库获取浮点支持。只有在需要时才会加载浮点支持功能。因此,当使用浮点类型说明符(比如%f)的格式化字符或printf和scanf函数时,需要在参数列表指定一个浮点类型的数值或数据指针来告诉编译器需要加载浮点支持。 综上所述,解决R6002 - floating point support not loaded错误的方法是,在程序提供浮点参数以符合浮点格式规范,或者在程序的其他地方执行浮点赋值操作。另外,还要确保在链接混合语言程序时,将C库指定在FORTRAN库之前。 请注意,本文重点讨论了R6002错误的原因和解决方法,并未涉及win32.pinfi病毒引起的问题。如果对该病毒感兴趣,可以参考相关资料以获取更多信息。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值