Visual Studio Code-无法打开源文件“iostream”

Visual Studio Code-Cannot open source file "iostream"

提问人:Mr72 提问时间:12/3/2017 更新时间:8/15/2023 访问量:28602

问:

我只想尝试使用 Visual Studio Code 进行 c++ 编码。我已经将 vscode 1.18.1 安装到我的笔记本电脑 (Win10-64) 上。

我通过键入以下代码出现错误:

#include <iostream>
using namespace std;
int main()
{
    std::cout << "Hello world!" <<endl;
    return 0;
}

应该不会发生错误。C:\Users\Harri\OneDrive\Tiedostot\Demo2.vscode\c_cpp_properties.json -content:

“路径”:[ “/usr/include”, “/usr/本地/包括”, “${workspaceRoot}” ],

第 1 行的问题/错误:

“#include 检测到错误。请更新您的 includePath。此转换单元 (C:\Users\Harri\OneDrive\Tiedostot\Demo2\Calc.cpp) 的 IntelliSense 功能将由标记分析器提供。"

“无法打开源文件”iostream“ ”

visual-c++ 可视化 studio 代码

评论

0赞 Mr72 12/3/2017
已安装扩展 Ms-C/C++ (ms-vscode.cpptools)
0赞 Mr72 12/4/2017
somone 可以更明智地帮助我解决 vscode 扩展的 Windows PATH 问题吗?当前路径仅定义:CMD>>PATH= ...;我认为,C:\Program Files\Microsoft VS Code\bin 扩展位于 C:\Program Files\Microsoft VS Code\resources\app\extensions -folder 上。Windows 搜索: %USERPROFILE%\.vscode\extensions 找不到正确的路径。
0赞 harper 3/11/2022
你没有描述你实际上是什么编译器。该文件应由编译器安装。该包含文件的实际路径是什么,即必须在 Windows 命令提示符下将什么路径添加到命令中才能列出文件?iostreamdirdir

答:

0赞 Scott McPeak 8/30/2019 #1

主要问题是 cygwin 路径

你有 cygwin 路径,就像你的文件一样。这是一个问题,因为 VSCode 不理解 cygwin 路径。在 cygwin shell 中,您可以运行:/usr/includec_cpp_properties.json

  $ cygpath -w /usr/include
  D:\cygwin64\usr\include

获取等效的 Windows 路径。把它放进去。请记住,当您将其复制到 JSON 字符串中时,必须将反斜杠加倍。c_cpp_properties.json

其他建议

这个 SO 答案描述了如何使用 cygwin gcc 设置 VSCode。我没有尝试过这些说明,但它们看起来很合理。

除此之外,我强烈建议阅读 VSCode 网站上的 C++ 入门教程。它可能会直接回答您的问题,但即使没有,有一个工作设置进行比较也很有价值。

此外,请查看 C/C++ 诊断:查看→命令面板...→ C/C++:日志诊断。这将显示 VSCode 试图模拟哪个编译器以及它认为 #include 路径是什么。

最后,为了直接从编译器中获取大量有用的信息,以便与 VSCode 的想法进行比较,如果您使用的是 gcc,请在 cygwin 或 bash 提示符下运行:

  $ touch empty.c
  $ gcc -v -E -dD empty.c > compiler-info.txt

这将写入所有预定义的宏、#include 搜索路径、默认目标等。compiler-info.txt

0赞 Sven Arno Jopen 7/15/2023 #2

我遇到了同样的问题,但通过在 C/C++ 配置中设置“编译器路径”可以轻松解决。然后,VS Code 直接找到该库并编译了该项目。

Screenshot from settings screen in VS Code