C++ - 简单的 hello world 在 vscode 中不起作用

C++ - Simple hello world doesn't work in vscode

我刚开始使用 C++ 编程,我遇到了一个可能非常简单的问题,但我已经尝试解决它很长时间了。 Cout 打印所有内置变量,但是当我尝试打印一个字符串变量时,它不起作用(它不打印任何东西,即使有其他 couts 和其他不是字符串的东西要打印)。

简而言之,当代码中有一个字符串变量时,没有任何作用,至少我是这样注意到的。

不打印任何东西

#include <iostream>
#include <string>
using namespace std;

int main() {
    string greeting="hello";
    cout << greeting;
    }

但这行得通:

    cout << "hello"; 

我在在线编辑器中尝试了完全相同的代码,它确实有效。

编辑 1:

在计算机的终端中,显示如下:在动态 link 库中找不到过程入口点...

路径: 这是 mingw 路径:C:\Program Files (x86)\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\bin

编辑 2

终于解决了。我已将 libstdc++libgcc 复制到我拥有 .exe.Thank 的位置,希望大家支持。特别感谢@HolyBlackCat.

“找不到过程入口点”等错误的解决方法是:

  • 列出位于编译器 bin 目录中的所有 .dll

  • 检查 C:\WindowsC:\Windows\System32 并确保 none 这些 dll 在那里。如果找到,请将它们移到其他地方(或删除它们)。

  • 将编译器的 bin 目录作为第一个条目添加到 PATH

我应该看到完整的代码,但考虑到它不仅仅适用于 string,可能你没有使用 namespace std: 试试这个:

#include <iostream>

using namespace std;

int main()
{
    string greeting = "Hello";

    cout << greeting;
}

如果还是不行,给我看完整的代码,我看看能不能帮忙!