您好我正在使用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;在代码块的开头,但我仍然收到错误
答案 0 :(得分:3)
您的示例代码非常非常陈旧。绝对是上个世纪。在本世纪,我们使用<fstream>
。 <fstream.h>
的问题在于它没有标准化,所以它可以包含的内容有很多可能性。您下载的示例代码将做出一些假设,我们无法猜测。
一般来说,由于我们讨论的是旧代码,因此它会先于namespace std;
。也就是说,可能没有std::ifstream
类,但可能有ifstream
类。您评论using namespace std;
没有帮助,这是在ifstream
加入<fstream>
之后让{{1}}正常工作的正常行为。看来你需要另一个hack或更新的示例代码。
答案 1 :(得分:2)
从.h
删除<fstream.h>
。
在包含的头文件下添加using namespace std;
。
答案 2 :(得分:1)
在最后尝试没有'.h':
#include <fstream>
修改强>
似乎还有一些进一步的解释。
当你有一些代码使用fstream让编译器理解代码的作用时,它需要来自标准库中fstream头文件的声明等。告诉编译器获取它需要一个include语句。 (注意:对于更多信息查找C ++预处理器,这个解释略有简化)
首先处理所有导入。当编译器找不到文件fstream.h时就停止了。为什么?因为没有程序员期望的文件是必要的,所以继续编译其余代码是没有意义的。代码(很可能)将引用程序员期望在缺失文件中定义的名称。
因此,当缺少包含的文件时,它不会更接近您编写的代码。
当您更改include语句以包含正确的文件时,编译可以继续更仔细地查看您的代码。从我读到的评论中你得到“更多错误”。但错误在你的代码中。
正如建议尝试自己修复它们。之后,在stackoverflow上创建一个关于您不理解的特定错误的新问题。
答案 3 :(得分:0)
我已经完成了这个错误。不需要删除或添加任何其他内容。只需安装turboo C ++。它的代码是turboo代码。当我运行它时,没有向我显示的错误。 转到bin文件夹并复制过去的代码并运行它。希望它对另一个人有所帮助。