(特殊情况,可能与 VC 目录设置有关)致命错误 C1083:无法打开包含文件:"iostream.h":没有此类文件或目录

(Special case, might related to VC directory setting) fatal error C1083: Cannot open include file: 'iostream.h': No such file or directory

本文关键字:文件 包含 iostream 致命错误 情况 设置 VC C1083      更新时间:2023-10-16

我被这个错误困扰了

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

很长一段时间,我尽了最大的努力去搜索所有相关的案例,但还是找不到一个好的答案。

我的情况是,我有一个简单的一段代码与几个依赖关系构建,设置所有的包含文件夹后,我只是遇到这个编译器错误所有的时间。两个奇怪的问题我无法回答,

  1. 有另一个win32控制台项目是别人为这个项目设置的,工作!我试图复制他的所有设置(命令行选项完全相同,所有的env变量都是相同的,我在同一个visual studio上运行两个项目),但只是在我自己的项目中有这个1083错误。

  2. 我正在玩设置,有一次我将平台从Active(Win32)更改为Win32,然后突然编译工作,但在那之后我再也无法复制它了。

问题是,我猜项目中的VS可能会到错误的目录

C:Program FilesMicrosoft Visual Studio 8VCinclude而不是C:Program Files (x86)Microsoft Visual Studio 8VCinclude

不太确定,早些时候我试图使用构建脚本编译并制作文件,同样的错误发生了,因为有人没有更新正确的VS目录。

很抱歉我不能在这里提供源代码,它也不会有帮助,因为它有几个级别的依赖。但我希望根据我的描述,有人可能会给我一些建议,我应该去哪个方向或花时间。

不推荐使用iostream.h,应该只使用iostream:

#include <iostream>

看到& lt; iostream>和& lt; iostream.h>与"iostream.h"

在这个版本的visual studio中(以及在任何现代c++ IDE中),标准库头被命名为没有任何足够的(iostream代替iostream.h, string代替string.h等)此外,C库头文件命名为cxxx而不是xxx.h,例如,您应该包含cstdlib而不是stdlib.h

当你说你在"同一个visual studio"上运行你的项目和其他人的(正在工作的)项目时,你是指相同的安装还是相同的版本?如果它们不在同一个安装上,那么即使项目设置完全复制,也可能是安装设置不同,这就是导致问题的原因。这可能是一个很渺茫的机会,但我会尽我所能来解释。

我遇到你的问题是因为我有一个稍微类似的问题。即使没有依赖项,我也无法编译一个简单的"Hello, World"程序。正如许多人建议的那样,我使用了没有"。h"的iostream,仍然得到了C1083。然后我意识到,当我安装VS时,我选中了一个基本功能,称为"Visual c++运行时库"。因此,我修改了安装以包含此功能。随后的编译工作顺利进行,问题得到了解决。是否有可能您的安装缺少其他人拥有的东西?如果您可以让您的项目在其他人的安装上工作,那么这可能有助于查明问题所在。希望这对你有所帮助。好运!

使用<iostream>的简单hello world程序编译和运行良好吗?

如果是,说明Visual Studio的系统设置是正确的,可能是项目设置或源代码有问题。

您可以通过检查确保代码实际上使用#include <iostream>而不是#include <iostream.h>来消除源代码。一旦完成,确保您的头搜索路径指向正确的位置(与您的hello world项目中的默认值相同)