1条回答 默认 最新
关注 首先,从编译报错信息看,不是函数没声明问题。应该是你的函数重载定义有问题,从而产生歧义,才导致调用函数时候报错“重载调用不明确”。这样对于不同平台或不同的编译器可能其效果是 不一样的。因为它们在兼容多数规则的同时也会持有自身的一些特性。这样就导致你在手机端APP中可以,而vs中不行。记住函数重载的几个原则: (1).函数名需相同。 (2).参数的个数、参数的顺序和参数的类型不同均可构成重载。 (3).返回值类型不同不能构成重载。 特别是(2)、(3)点很重要,你再检查下你的函数重载定义是否满足上面条件。
其次,floor是c语言的一个库函数,其功能是:其功能是“向下取整”,或者说“向下舍入”。特别重要的一点是,程序中自定义的函数名、变量名等不要与c中的关键字或是函数库名字一样,这是很不好的代码风格,也不满足编程规范。也有可能是这个
产生的报错。若检测了前面的几个原则,都没有问题时候,则重新定义下函数名。即可。
若有帮助,还望楼主采纳!!!谢谢。。。。楼主,我的“帖子回复功能不能使用,只有在这里回答你刚才的问题。”
你需要包含头文件
#include <math.h>
就可以使用了,floor包含在该头文件中。
floor的函数原型是:
double floor(double x);
因此若要转为int类型,有的平台会警告waring,有的则直接报错,需要强制转换,因为会损失精度。
望采纳!!!!
解决 2无用
悬赏问题
- ¥100 求三轴之间相互配合画圆以及直线的算法
- ¥100 c语言,请帮蒟蒻写一个题的范例作参考
- ¥15 名为“Product”的列已属于此 DataTable
- ¥15 安卓adb backup备份应用数据失败
- ¥15 eclipse运行项目时遇到的问题
- ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
- ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
- ¥15 自己瞎改改,结果现在又运行不了了
- ¥15 链式存储应该如何解决
- ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站