打印“*”时退出 VSCode 中的调试 C++ 应用程序

Debugging c++ application in VSCode exits when "*" is printed

我正在使用以下应用程序

#include <iostream>

using namespace std;

void print(char* s)
{
    cout << s << endl;
}

int main(int argc, char* argv[])
{
    print("a"); 
    print("b");
    print("***");
    print("c");
    print("d");
}

当我 运行 使用 VSCode 下的调试器(使用“本机调试”扩展)时,它从未通过第二次打印,这是我的输出:

a
b

它永远不会通过 print("***),即使我在该行之后放置一个断点它也不会到达它。

如果我注释掉 print("***"),应用程序将以正确的输出结束:

a
b
c
d

我唯一设法弄清楚的是存在并发出打印“*”字符,如果我将其替换为任何其他字符,一切正常。为什么我会看到此行为?如何在不更改代码的情况下解决此问题?

@molbdnilo,似乎是正确的。它看起来像是“本机调试”扩展中的错误。使用另一个扩展时问题不会重现(我尝试使用 Microsoft 的“C/C++”扩展)