macbook m1实现vscode下debug(解决无法读入的问题)
作者:互联网
需要下载的
- 点击下载vscode,注意选择Mac的Universal版本
(兼容intel和apple silicon)
- 安装两个插件 C/C++ Extension Pack, CodeLLDB
需要开启的
- vscode 输入
command + ,
打开设置,输入terminal external
,将图中框出的两个选项修改为external
需要新建的
- 新建一个源文件
hello.cpp
#include <iostream>
using namespace std;
int main()
{
int a = -1;
cin >> a;
cout << a + 100 << endl;
return 0;
}
command+shift+p
输入C/C++ 编辑配置(UI)
,会自动生成.vscode/c_cpp_properties.json
内容为:
{
"configurations": [
{
"name": "Mac",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [],
"macFrameworkPath": [
"/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks"
],
"compilerPath": "/usr/bin/clang",
"cStandard": "c17",
"cppStandard": "c++17",
"intelliSenseMode": "macos-clang-arm64"
}
],
"version": 4
}
command + shift + p
输入Tasks: Configure Task
,选中后再选择C/C++: clang++生成活动文件
,生成.vscode/task.json
,这里需要修改内容,建议直接复制如下:
{
"version": "2.0.0",
"tasks": [
{
"type": "cppbuild",
"label": "cpp",
"command": "/usr/bin/clang++",
"args": [
"-fcolor-diagnostics",
"-fansi-escape-codes",
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": "build",
"detail": "编译器: /usr/bin/clang++"
}
]
}
- 点击vscode最左侧的爬虫(运行和调试),点击
创建 launch.json 文件
,选择LLDB
,生成了一个.vscode/launch.json
需要修改和添加内容,建议直接复制如下:
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "lldb",
"request": "launch",
"name": "Debug",
"program": "${fileDirname}/${fileBasenameNoExtension}",
"args": [],
"cwd": "${workspaceFolder}",
"preLaunchTask": "cpp"
}
]
}
剩余工作
- 在
hello.cpp
中的6、7、8三行打上断点,然后将编辑框留在hello.cpp
- 点击vscode最左侧的爬虫(运行和调试),点击最上面的绿色启动按钮,启动程序
- 点击最左侧的
继续(F5)
,到达第6行时会发现左侧的Local变量原本存在的a消失了 - 这时候会发现系统启动了一个终端,在终端中输入a的值并回车确认,此时程序将继续执行,左侧的Local变量中的a将显示你所输入的值
- 至此完毕。
标签:vscode,json,clang,cpp,点击,m1,debug,command 来源: https://www.cnblogs.com/solego/p/16651775.html