c++ - 不能使用 C 库(函数)

标签 c++ eclipse qt

以下是我的环境:

  • 面向 C/C++ 开发人员的 Eclipse IDE(Juno)
  • Qt 4.8.3
  • Qt Eclipse Integration v1.6.1
  • 明威(20120426)

当我创建一个Qt控制台项目时,我无法使用C库函数,例如exit(int)atoi(string)

错误信息类似于Function 'exit' could not be resolved

我已经包含了stdlib.h,但仍然无法工作。

不知道跟索引有没有关系


20121109 更新

谢谢你给我的帮助!

atoi 只是一个例子!

虽然我用c++写程序,但有时我想用C库,所以我把它标记为c++。

下面是我的内容

  • C:/MinGW/include
  • C:/MinGW/lib/gcc/mingw32/4.6.2/include
  • C:/MinGW/lib/gcc/mingw32/4.6.2/include/c++
  • C:/MinGW/lib/gcc/mingw32/4.6.2/include/c++/backward
  • C:/MinGW/lib/gcc/mingw32/4.6.2/include/c++/mingw32
  • C:/MinGW/lib/gcc/mingw32/4.6.2/include-fixed

其他都是Qt库。

下面是main

#include <QtCore>
#include <QCoreApplication>
#include <cstdlib>

using namespace std;

int main(int argc, char *argv[])
{
    std::exit(0);
    QCoreApplication a(argc, argv);
    return a.exec();
}

我尝试了这种方式,但仍然收到错误消息 Function 'exit' could not be resolved

非常感谢!

最佳答案

首先,使用 C++ header 样式。对于 stdlib.h :

#include <cstdlib>

然后,我猜你没有带命名空间信息。要么写:

using namespace std;

(即使我不推荐)或

using std::exit    using std::atoi;

或使用完全限定的名称:

std::exit(-1);

最后,为什么需要 atoi 这样的函数?

关于c++ - 不能使用 C 库(函数),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13293925/

相关文章:

c++ - Qt中如何获取QWidget的QTabWidget标题文本?

C++ 多重定义错误

c++ - 有没有办法防止自动变量被删除?

android - 这个android布局xml block 中的错误是什么

java - Eclipse 调试 - 在没有断点的情况下停止

qt - 忽略 OSG 内 Qt 上的键盘按键

c++ - std::basic_string<_CharT> 字符串的最大长度

C++ 使用 Poco 库编译错误 - 包含空格的路径名

java - 错误 org.hibernate.property.BasicPropertyAccessor - IllegalArgumentException

qt - 拒绝到 TCP 服务器的传入连接