当前位置: 首页 > news >正文

vscode的使用

如何优雅在vscode上调试c++程序呢?首先需要安装相关的工具:

sudo apt update
sudo apt install build-essential gdb

然后安装对应的扩展:
打开 VS Code,安装扩展:
C/C++(Microsoft 出品)
C/C++ Extension Pack(可选,包含调试支持)
code runner等等
在这里插入图片描述

安装好扩展之后建立一个专门用于cpp的文件夹,然后创建配置文件到.vscode中:
在这里插入图片描述

写入配置(不用修改)tasks.json:

{"tasks": [{"type": "cppbuild","label": "C/C++: g++ 生成活动文件","command": "/usr/bin/g++","args": ["-fdiagnostics-color=always","-g","${file}","-o","${fileDirname}/${fileBasenameNoExtension}"],"options": {"cwd": "${fileDirname}"},"problemMatcher": ["$gcc"],"group": {"kind": "build","isDefault": true},"detail": "调试器生成的任务。"}],"version": "2.0.0"
}

launch.json:

{"version": "0.2.0","configurations": [{"name": "Debug C++","type": "cppdbg","request": "launch","program": "${fileDirname}/${fileBasenameNoExtension}","args": [],"stopAtEntry": false,"cwd": "${workspaceFolder}","environment": [],"externalConsole": false,"MIMode": "gdb","setupCommands": [{"description": "Enable pretty-printing for gdb","text": "-enable-pretty-printing","ignoreFailures": true}],"preLaunchTask": "build cpp","miDebuggerPath": "/usr/bin/gdb"}]
}

其他的就默认就行了。
创建一个简单的c++程序:

#include <iostream>
using namespace std;int main() {cout << "Hello, Ubuntu + VS Code!" << endl;return 0;
}

打上断点,尽情调试即可:
在这里插入图片描述

如果是调试和运行单个/多个程序呢?
第一种方式是通过指定所有的cpp到args中:

{"version": "2.0.0","tasks": [{"type": "shell","label": "build multi-cpp","command": "/usr/bin/g++","args": ["-g","src/main.cpp","src/foo.cpp","src/bar.cpp","-I", "include","-o", "${workspaceFolder}/bin/app"],"group": { "kind": "build", "isDefault": true },"problemMatcher": ["$gcc"]}]
}

同步修改launch.json,把program指定到上一步生成的可执行文件:

"program": "${workspaceFolder}/bin/app",
"preLaunchTask": "build multi-cpp",

对应的结构:

cpp_proj
├── .vscode
│   ├── tasks.json
│   └── launch.json
├── include
│   └── bar.h
├── src
│   ├── main.cpp
│   ├── foo.cpp
│   └── bar.cpp
└── bin└── app   (生成的可执行文件)

第二种则是通过cmake/makefile来进行简化.这里就不再赘述了.

另外就是程序格式的整理了,使用clang-format工具,首先安装相应的工具:

sudo apt install clang-format

然后生成.clang-format文件:

clang-format -style=llvm -dump-config > .clang-format

然后安装插件:
在这里插入图片描述
配置插件中的位置:
在这里插入图片描述
在这里插入图片描述
使用时,对于需要整理的代码,右键进行格式化文档
在这里插入图片描述
在这里插入图片描述
缩进信息就没有问题了.

http://www.dtcms.com/a/334637.html

相关文章:

  • FPGA实现I2C通信方案
  • 爬机 验证服务器是否拒绝请求
  • 第五章 大数定律与极限定理
  • 概率论基础教程第3章条件概率与独立性(一)
  • 搜索 AI 搜索 概率论基础教程第3章条件概率与独立性(二)
  • Tomcat Server 组件原理
  • Java 学习笔记(基础篇3)
  • 从零打造大语言模型2--编码注意力机制
  • 【基础-判断】可以通过ohpm uninstall 指令下载指定的三方库
  • 中国教育信息化演进历程与发展趋势研究报告
  • Bash常用操作总结
  • 解决html-to-image在 ios 上dom里面的图片不显示出来
  • 《Python 单例模式(Singleton)深度解析:从实现技巧到争议与最佳实践》
  • 【自动化运维神器Ansible】Ansible逻辑运算符详解:构建复杂条件判断的核心工具
  • Manus AI与多语言手写识别的技术突破与行业变革
  • c#Blazor WebAssembly在网页中多线程计算1000万次求余
  • aws(学习笔记第五十一课) ECS集中练习(3)
  • 基于W55MH32Q-EVB 实现 HTTP 服务器配置 OLED 滚动显示信息
  • qsort实现数据排序
  • cuda编程笔记(15)--使用 CUB 和 atomicAdd 实现 histogram
  • PMP-项目管理-十大知识领域:进度管理-制定时间表、优化活动顺序、控制进度
  • 进程替换:从 “改头换面” 到程序加载的底层逻辑
  • 【深度学习计算性能】05:多GPU训练
  • TypeScript快速入门
  • MCP 大模型的扩展坞
  • 洛谷P1595讲解(加强版)+错排讲解
  • php版的FormCreate使用注意事项
  • 基于单片机的防酒驾系统设计
  • NY243NY253美光固态闪存NY257NY260
  • 24. async await 原理是什么,会编译成什么