Mac vscode C++调试 无法输入问题

最近折腾VsCode,调试C++打断点卡住,类似

	scanf(...);
	getch();

无法接收调试控制台的输入,这里需要改一个地方:
launch.json

    "configurations": [
        {
     
           // 其他配置
            "externalConsole": true,
            "MIMode": "lldb"
        }
    ]

使得调试会新开控制台,但某些时候会出现新开控制台后卡住不动的问题,因为vscode没拿到控制台权限,这个时候需要:

  • 1、检查DevToolsSecurity -status是否为enabled,否则运行
	DevToolsSecurity -enable
  • 2、检查launch.json,不能出现
	"miDebuggerArgs":xxx
	"miDebuggerPath":xxx
  • 3、创建一个task(task.json),内容如下
   	{
     
   		"label": "Open Terminal",
   		"type": "shell",
   		"command": "osascript -e 'tell application \"Terminal\"\ndo script \"echo hello\"\nend tell'",
   		"problemMatcher": []
   	  }

运行一次Open Terminal即可
参考: Unable to debug with ‘externalConsole’: true

你可能感兴趣的:(c++,mac)