ubuntu系统下如何使用vscode编译和调试#小白入门#

news/2024/4/27 12:45:04/文章来源:https://blog.csdn.net/SmartTiger_CSL/article/details/136911026

编程环境:ubuntu系统为18.04.1,vscode版本为1.66.2

一、VSCode切换中文显示:

1、vscode安装完成后启动,在左侧externsions中搜索“简体中文”插件,并完成安装:
请添加图片描述
2、选择右下角齿轮形状的"Manage",选择第一项“command palette…“,
请添加图片描述
3、在右侧最上面输入栏选择"configure display language”,
请添加图片描述
4、选择下拉中的第二项“zh-cn”:
请添加图片描述
5、选择重新启动VSCode,切换到中文显示。
请添加图片描述

二、设置工作区

1、在本地任意目录创建一个test文件夹(我这里的目录为/home/l/projects/mytest),在vscode中选择“打开文件夹”,选择刚才新建的“mytest"文件夹:
请添加图片描述
2、在mytest目录下新建一个“hello.cpp"的文件,并编写一个main函数,向终端输出"hello world!":请添加图片描述

三、编译和调试的脚本配置

由于vscode只是一个代码编辑和查看工具,本身并不具备代码编译和调试功能,因此需要通过tasks.json 和launch.json脚本配置指令,调用本地已安装的编译器(如gcc或者g++等)实现编译和调试功能。

1、创建tasks.json。注意:在操作前,需要先选中"hello.cpp"文件(否则无法找到相应编译器),在最上面的菜单栏里选择“终端”,选择最后一项"配置默认生成任务",这里会列出已安装可用的编译器,这里我选择“C/C++:g++生成活动文件",创建tasks.json:
请添加图片描述
tasks.json里的参数配置一般情况下是不需要修改的:
在这里插入图片描述
2、创建launch.json。在左侧活动栏的“运行和调试”中,选择“创建launch.json文件”,会在当前工作区里自动生成一个launch.json文件;在"launch.json"文件中,选择右下角的“添加配置”,选择第一项“C/C++:(gdb)启动”,会自动按模板生成脚本:请添加图片描述3、修改launch.json。下图中,对比tasks.json和launch.json两个文件代码:
tasks.json代码里的参数一般情况下是不需要更改的,都是宏定义符,只需要更改launch.json。将launch.json代码模板的第11行注释掉,修改为图中第12行的格式,这样不管执行程序的名字是什么,能自动识别当前工作区编译生成的可执行程序;
同时在第19行增加一行代码,目的是在调用launch.json之前,先运行tasks.json中的配置命令"C/C++: g++ 生成活动文件",(也就是先进行编译工作), 图中标记的2 和3 地方的名称一定要保持一致
请添加图片描述关于tasks.json和launch.json文件参数的详细介绍可参考这两个文章:
VS Code上C++的环境配置&tasks.json和launch.json解析
vscode launch.json和task.json配置(重要参数详解)
4、选中"hello.cpp",然后选择“运行和调试”,点击上面的绿色三角(名字为(gdb)启动)(这个名字可以在launch.json中"name"参数那里修改),就会自动完成编译,生成执行程序hello,如何在代码里提前打了断点,就会停在断点处,这样就可以单步调试了:
在这里插入图片描述

说明:tasks.json和launch.json这些文件其实是在当前工作区的一个.vscode文件夹里,默认从文件系统里是看不到这个文件夹的,只能从vscode的资源管理器查看:
请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_1026840.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自然指数函数e^x与欧拉数e (下)

自然指数函数e^x与欧拉数e Part I: 如何找到欧拉数e 上一篇文章停在了“应该存在一个b,使得指数函数b^x在x0处的导数为1。且该指数函数在任意一处的导数都等于当前位置的函数值”。根据前面所知道的,可以用数学公式列出以下一些已知条件: &am…

Go语言学习Day5:函数(下)

名人说:莫愁千里路,自有到来风。 ——钱珝 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 目录 1、本质、数据类型与延迟函数①函数的本质②函数的数据类型③defer延迟函数 2、匿名、回调函数与闭…

Go——map操作及原理

一.map介绍和使用 map是一种无序的基于key-value的数据结构,Go语言的map是引用类型,必须初始化才可以使用。 1. 定义 Go语言中,map类型语法如下: map[KeyType]ValueType KeyType表示键类型ValueType表示值类型 map类型的变量默认…

班级综合测评管理系统的设计与实现|Springboot+ Mysql+Java+ B/S结构(可运行源码+数据库+设计文档)

本项目包含可运行源码数据库LW,文末可获取本项目的所有资料。 推荐阅读100套最新项目持续更新中..... 2024年计算机毕业论文(设计)学生选题参考合集推荐收藏(包含Springboot、jsp、ssmvue等技术项目合集) 目录 1. …

docker 的网络管理

docker应用自带了三种类型的网络,然后我们自己也能自定义网络 roottest-virtual-machine:~# docker network ls NETWORK ID NAME DRIVER SCOPE 4c3e28760cff bridge bridge local afd1493dc119 host host local 5f200e2eaf22 n…

AOP切入点表达式基本格式

版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl 官方地址 https://docs.spring.io/spring-framework/reference/core/aop/ataspectj/pointcuts.html AOP切入点表达式基本格式如下: execution(modifiers-patte…

Vscode创建php项目

1.安装中文插件(可安装可不安装) 2.安装主题(可安装可不安装) 3.安装和php相关的插件 4.打开文件夹 5.路由操作 查看项目中的route路由 浏览器中访问think 隐藏index.php入口文件 访问ThinkPHP5.1开发手册,复制apa…

React-1-jsx基础-事件绑定-样式处理

一.JSX基础-概念和本质 1.1 什么是JSX JSX是JavaScript和XML(HTML)的缩写,表示在JS代码中编写HTML模版结构,它是React中编写UI模版的方式 优势: 1. HTML的声明式模版写法 2. JS的可编程能力 JSX的本质: JSX并不是标…

[openGL] qt5版本+mingw编译Assimp库+调用

目录 一 版本 二 编译问题 三 CMAKE准备 四 开始编译 4.1 准备Assimp源码 4.2 编译工具准备 4.3 生成Assimp库 4.4 使用Assimp 4.4.1 准备 4.4.2 加载模型 4.4.3 模型效果 一 版本 Assimp官网上已经停止更新截至在3.3.1版本,但是这个版本编译是最稳定的,较新的版本…

WORDPRESS从WORD复制粘贴公式

整合教程:WordPress插件包整合教程 WordPaster支持自动上传本地图片文件,自动上传Word文档中的图片 步骤与效果: 1.打开word文档,复制word文档内容 2.在网页中打开编辑器页面,点击“粘贴本地文件,Word文档”按钮上传…

GBase8a-GDCA认证考试-复习参考题

个人能力有限,正确率97%(97分)。 请注意甄别,根据所学知识综合判断,欢迎指出错误答案。 欢迎学习天津南大通用数据技术股份有限公司|GBASE-致力于成为用户最信赖的数据库产品供应商 免费参加认证培训:为…

Visio中存在问题的解决方法

公式缩放 mathtype公式在visio缩放之后,出现了变形。 解决方法:每次输入公式都通过 插入->对象->mathType Equation 新建一个公式。可以避免 注:网上有的说在word中使用mathtype编写公式,之后复制到visio中。 插入波形 选择…

Java的IDEA的工程管理

模块和包的图标: 举个例子: IDEA中创建包: 如图所示,com.LBJ的意思是在com包中创建子包LBJ 参见: IDEA中项目、模块和包的关系_idea中模块和项目-CSDN博客

应用层协议之DNS协议

一.应用层协议的相关数据传输格式 1.文本字符串格式 应用层主要是自定义协议,以点外卖为例: 客户点开软件,就是应用程序和服务器之间进行网络通信交互。请求和响应可以如下设置 请求:用户信息,位置信息&#xff0c…

Vue模块化开发步骤—遇到的问题—解决办法

目录 1.npm install webpack -g 2.npm install -g vue/cli-init 3.初始化vue项目 4.启动vue项目 Vscode初建Vue时几个需要注意的问题-CSDN博客 1.npm install webpack -g 全局安装webpack 直接命令提示符运行改指令会报错,operation not permitted 注意&#…

【QT入门】 Qt代码创建布局之水平布局、竖直布局详解

往期回顾: 【QT入门】 Qt实现自定义信号-CSDN博客 【QT入门】 Qt自定义信号后跨线程发送信号-CSDN博客 【QT入门】 Qt内存管理机制详解-CSDN博客 【QT入门】 Qt代码创建布局之水平布局、竖直布局详解 先看两个问题: 1、ui设计器设计界面很方便&#xf…

1学习使用axios

一、axios介绍: axios 是一个基于 Promise 的 HTTP 客户端,用于浏览器和 Node.js。它提供了一种简单的方法来发送 HTTP 请求,并且具有很多实用的功能,使得网络请求变得更加方便和可靠。 以下是 axios 的一些主要特点和功能&…

python判断当前日期是全年哪一天

设计者:ISDF 版本:v3..0 日期:04/01/2019设计者:ISDF 版本:v4..0 日期:03/27/2024 import datetime#闰年判断函数 def ys_leep_year(year):ys_leep Falseif (year % 400 0) or ((year % 4 0) and (year …

【每日力扣】452. 用最少数量的箭引爆气球与763. 划分字母区间

🔥 个人主页: 黑洞晓威 😀你不必等到非常厉害,才敢开始,你需要开始,才会变的非常厉害。 452. 用最少数量的箭引爆气球 有一些球形气球贴在一堵用 XY 平面表示的墙面上。墙面上的气球记录在整数数组 points &#xff0…

SpringBoot学习之ElasticSearch下载安装和启动(Windows版)(三十)

本文先写windows下的下载安装和启动,后续有时间再补充其他环境下(Mac、Linux、Docker)的,这里我们后续对ElasticSearch简称为ES,读者习惯这一称呼就好。 一,ES下载 可以百度【ElasticSearch官网】或者直接点击这里的ES官网下载地址:​​​​​ Download Elasticsearch…