我的 C++ 项目在 Linux 上构建和运行良好。现在我想在 VS2010 中编译它。我从 cmath 库中得到很多错误,如下所示。
Error 1 error C2061: syntax error : identifier 'acosf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 19 1 MyPROJ
我还遇到许多与文件操作相关的编译错误,例如:
Error 1 error C3861: 'lseek': identifier not found g:\project\file.cc 274 1 MyPROJ
Error 2 error C3861: 'write': identifier not found g:\project\file.cc 275 1 MyPROJ
如何消除这些错误。
最佳答案
lseek 和 write 是不属于 C 标准的 unix(posix?)调用。 它们在 Windows 上可用,但使用名称 _lseek 和 _write
虽然不确定 acosf
编辑:acosf 应该可用,你是否包括 math.h
编辑更多:更仔细地查看原始帖子,错误在 cmath 中,这很好,但您可能必须编写 std::acosf - 但错误在包含文件中。当我尝试它时它工作正常,所以包含之前的某些东西可能会发生冲突。在您的源代码中包含 cmath 之前是什么?
关于c++ - 对于在 Linux 中正常构建的 C++ 程序,VS2010 中的编译失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4769822/