我用C语言编写了一个代码,如下所示:
main() { float x[10][10]; int i,j; clrscr(); scanf("%d%d",&i,&j); for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%f",&x[i][j]); ...... }
当我运行这个程序时,会出现一个错误终止,错误如"FLOATING POINT CONVERSIONS NOT LINKED".
你介意告诉我我错了什么吗?
我的操作系统:Windows XP编译器:TurboC
http://c-faq.com/fp/fpnotlinked.html
一些小型机器的编译器,包括Turbo C(和Ritchie的原始PDP-11编译器),如果看起来不需要它,就会省略某些浮点支持.特别是,printf和scanf的非浮点版本通过不包括处理%e,%f和%g的代码来节省空间.碰巧Borland用于确定程序是否使用浮点的启发式算法是不够的,并且程序员有时必须向浮点库函数(例如sqrt;任何将执行)插入一个虚拟调用来强制加载浮点支持.(有关详细信息,请参阅comp.os.msdos.programmer FAQ列表.)部分相关的问题,导致类似的错误消息(可能是"浮点未加载")在某些MS-DOS编译器下显然会发生浮点库的不正确变体已链接.查看编译器手册中各种浮点库的描述.