致命错误:iostream:无此文件或目录 #include <iostream>

3
我在学习C++时遇到了问题,在编译时遇到了错误。
具体情况如下: enter image description here enter image description here

尝试在您的计算机上搜索名为 iostream 的文件。 如果该文件不存在,则可能意味着运行时库未正确安装或根本未安装。 - Thomas Flinkow
具体来说,文件是否存在于C:\MinGW\lib\gcc\mingw32<your GCC version>\include\c++\目录下?此外,您的文件是否具有.cpp扩展名(而不是.c或其他扩展名)? - mahesh
也可以尝试将编译器安装目录仅设置为 "C:\MinGW"。 - mahesh
@mahesh 谢谢。我的系统路径是 C:\MinGW\lib\gcc\mingw32\6.3.0\include,在 C:\MinGW\lib\gcc\mingw32<你的GCC版本>\include 目录中没有 c++,也没有 iostream 文件在 'include' 中。我已经重新安装了 MinGW,但还是没有找到。 - CodeFan
@ThomasFlinkow 谢谢。我已经重新安装了MinGW,但它仍然不在那里。 - CodeFan
@mahesh,我已经将目录更改为“C:\MinGW”,但它仍然无法工作。 - CodeFan
3个回答

1

看起来在 mingw32 安装程序中您没有选择 C++ 可选的编译器/开发包。C++ 开发包不会被默认安装。请重新运行安装程序并选择所需的开发包进行安装。

您也可以添加一个或多个以下可选编译器或工具。对于每个您选择安装的内容,您需要安装所有三个 "bin","dev" 和 "dll" 组件包:

  • gcc-c++(用于 C++ 的 "bin","dev" 和 "dll")

1

您似乎没有在MinGW中安装C++支持。如果您使用手动安装方法,请下载gcc-c++的开发、dll和bin文件。如果您使用自动化GUI安装程序(推荐给C++新手),请确保勾选C++软件包:

在此输入图片描述

我已经重新安装了MinGW包。iostream文件可以在C:\ MinGW \ include \ c ++ \ 3.4.5中找到,但是在构建(Win 10和CodeBlock)时显示以下构建日志: mingw32-g ++ .exe -Wall -fexceptions -g -c D:\ Coding \ Cplus \ HelloWorld \ Chpt1Demo \ main.cpp -o obj \ Debug \ main.o mingw32-g ++ .exe -o bin \ Debug \ Chpt1Demo.exe obj \ Debug \ main.o D:\ Coding \ Cplus \ HelloWorld \ Chpt1Demo \ main.cpp:1:20:致命错误:iostream:没有那个文件或目录 #include <iostream> - CodeFan
你能否尝试在项目设置中的“搜索目录”(编译器)中包含路径C:\MinGW\include\c++\3.4.5并尝试?不知何故,编译器现在无法找到安装的文件。 - mahesh
我已经包含了路径,并且已经获取到了以下信息: ||=== 构建: 调试模式 Chpt1Demo (编译器: GNU GCC Compiler) ===| C:\MinGW\include\c++\3.4.5\iostream|44|致命错误: bits/c++config.h: 没有那个文件或目录| ||=== 构建失败: 1 个错误,0 个警告 (0 分钟,0 秒) ===| - CodeFan
在C:\MinGW\include\c++\3.4.5\bits\目录下是否存在c++config.h文件? - mahesh
是的,@mahesh,在我输入了C:\ MinGW \ include \ c ++ \ 3.4.5 \ bits \之后,它可以工作,但也会给出以下消息: c:/ mingw / bin / .. / lib / gcc / mingw32 / 6.3.0 / .. / .. / .. / libstdc ++ .a(ios_init.o):ios_init.cc:(.text + 0x34):对'_Unwind_SjLj_Register'的未定义引用... ... - CodeFan
你的MinGW安装似乎有问题,或者你的机器上有多个安装。作为最后的办法,彻底从你的机器上删除所有的MinGW(包括系统路径中的),同时也删除Code::Blocks。然后使用带有MinGW的Code::Blocks(codeblocks-17.12mingw-setup.exe)进行安装。这将安装带有正确选项的Code::Blocks和它自己的MinGW。 - mahesh

-1

在此输入图片描述

如果您想将另一个cpp文件添加到现有文件中以使用来自其他文件的预定义函数,则必须使用以下语法,在引号内加上文件名:

#include "filenName.cpp"

附带空格。就是这样。


这并没有回答问题。#include <iostream> 已经写在问题中了,问题是找不到头文件 iostream。 - Klaus Gütter

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