C++ GCC - 无法包含 ctime、cstring 或 cstdlib

5

我创建了一个简单的函数来获取当前日期和时间。在我的Windows机器上,在Visual Studio中测试时可以正常工作。

以下是包含我的日期时间功能所需的目录:

#include <ctime>
#include <cstring>
#include <cstdlib>

将以下内容添加到我的 Visual Studio C++ 程序顶部可以正常工作,但当我尝试在我的 VPS 服务器上使用 GCC 进行编译时,出现了以下错误。
main.c:12:17: error: ctime: No such file or directory
main.c:13:19: error: cstring: No such file or directory
main.c:14:19: error: cstdlib: No such file or directory

以下是我如何在我的VPS服务器上使用GCC编译C++程序的方法:

gcc main.c -o bin/main `mysql_config --cflags --libs` -std=c99 -lpthread;
3个回答

5

gcc 不是用于编译 C++ 的编译器,你需要使用 g++

在这里查看实时示例。

你还需要检查你的参数和 -std 类型。你正在尝试将 C++ 文件编译为 C。


3

gcc是一种C语言编译器。要编译C++代码,您需要使用g++。

您的源文件还应具有.cpp或.cxx扩展名。


2

你的代码是C++的,但是有两个错误导致了这些错误:

首先,你的代码文件应该以.cpp.cxx扩展名命名。现在,它是main.c.c是用于C代码文件的扩展名,而不是C++。因此,你应该将文件名更改为main.cpp

其次,简单来说,gcc是用于编译C代码的编译器。你的代码再次是C++,因此在命令中使用g++而不是gcc


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接