繁体   English   中英

致命错误 C1083:无法打开包含文件:'fstream.h':没有这样的文件或目录

[英]fatal error C1083: Cannot open include file: 'fstream.h': No such file or directory

嗨,我正在使用 Visual C++ 2010 Express,当我编译此示例程序时收到该错误,我下载了“致命错误 C1083:无法打开包含文件:‘fstream.h’:没有这样的文件或目录”

#include<fstream.h>
#include<string.h>
#include<stdio.h>
#include<ctype.h>
#include<conio.h>
#include<stdlib.h>
#include<dos.h>

我尝试使用命名空间 std; 在代码块的开头,但我仍然收到错误

您的示例代码非常非常古老。 绝对是上个世纪。 在本世纪,我们使用<fstream> <fstream.h>的问题在于它没有标准化,因此它可以包含的内容有很多可能性。 您下载的示例代码会做出一些假设,我们无法猜测。

一般来说,由于我们谈论的是旧代码,它会早于namespace std; . 也就是说,可能没有std::ifstream类,但可能有一个ifstream类。 您已经评论说using namespace std; 没有帮助,这是在包含<fstream>后让ifstream工作的正常黑客。 看来您需要另一个 hack 或更新的示例代码。

<fstream.h>删除.h

添加using namespace std; 在包含的头文件下面。

尝试在末尾不带 '.h':

#include <fstream>

编辑:

似乎需要做一些进一步的解释。

当您有一些代码使用 fstream 供编译器理解时,它需要标准库中 fstream 头文件中的声明等。 告诉编译器获取它需要一个包含语句。 (注意:这个解释稍微简化了更多信息查找 C++ preprossesor)

首先处理所有进口。 当编译器找不到文件 fstream.h 时,它会停止。 为什么? 因为没有程序员期望的文件是必要的,继续编译其余的代码是没有意义的。 代码将(很可能)引用程序员期望在丢失文件中定义的名称。

因此,当缺少包含的文件时,它不会更仔细地查看您编写的代码。

当您更改 include 语句以包含正确的文件时,编译可以继续更仔细地查看您的代码。 从我读到的评论中,您会收到“更多错误”。 但是错误在您的代码中。

按照建议尝试自己修复它们。 之后在 stackoverflow 上创建一个关于您不理解的特定错误的新问题。

我已经做了这个错误。不需要删除或添加任何其他东西。只有你安装turboo C++。 它的代码是turboo 代码。当我运行它时,没有错误显示给我。 转到 bin 文件夹并复制过去的代码并运行它。 希望它会帮助另一个。

在该编译gdb online compiler中使用gdb online compiler器选择语言为“c++ turbo”

[gdb 编译器][1]

希望它现在运行:) [1]: https://www.onlinegdb.com/online_c++_compiler

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM