好几年没有写过C/C++代码,基本上都忘光了,之前是使用VC++6.0写代码的,最近用VSCode成功搭建了C/C++开发环境,这里记录一下搭建过程。

1. 安装VSCode

在官网https://code.visualstudio.com/#alt-downloads下载安装包安装即可。

2. 安装VSCode插件

这里根据自己的需要安装了以下插件:

1. C/C++
2. Chinese (Simplified) Language Pack for Visual Studio Code

3. 安装VirtualBox

VirtualBox 是一个虚拟机软件,可以通过https://www.virtualbox.org/wiki/Downloads这里进行下载安装。

4. 安装Ubuntu系统

在VirtualBox新建一个虚拟机,分别填写如下信息。

名称: ubuntu64    #虚拟机名称
文件夹: E:\VboxVm #虚拟机的存储路径
类型: Linux
版本: ubuntu(64-bit)

分配内存: 2048 MB

下一步

下一步

磁盘大小: 60GB

创建虚拟机后,选中虚拟机,设置

系统:
1. 启动顺序去掉软驱
2. 处理器2
存储:
控制器-盘片-分配光驱(选择下载准备好的ubuntu-18.04.4-desktop-amd64.iso)
网络:
网卡1,选择桥接网卡
共享文件夹:
共享文件夹路径(H:\Vbox\mnt)
共享文件夹名称(mnt)
自动挂载
固定分配
挂载点(不填)

启动虚拟机。

启动虚拟机后,在菜单栏中,选择“设备”->“安装增强功能” ,如果没有启动安装,则双击桌面上的光盘进行安装。

安装完成后重启虚拟机

sudo reboot

在菜单栏中,选择“视图”->“虚拟机显示屏1” 选择合适的分配率。

然后在终端中执行以下命令,解决vbox共享文件夹非root用户无权限访问的问题。

sudo usermod -aG vboxsf $(whoami)

在Ubuntu中安装VSCode,安装相应的插件(这一步跟windows环境是一样的)。

5. 创建项目

在Windows系统中的共享目录(即H:\Vbox\mnt)创建一个helloworld项目,然后用VSCode以打开文件夹的方式,打开helloworld项目。

打开项目后,需要配置C/C++相关的编译器等信息。

使用Ctrl + ~打开命令行终端:

mkdir .vscode # 创建.vscode目录,注意前面有个点

在.vscode目录下面分别创建launch.jsontasks.json

launch.json

{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) helloworld",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/main",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"setupCommands": [
{
"description": "gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "build"
}
]
}

tasks.json

{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "build",
"type": "shell",
"command": "g++",
"args": ["-g", "${workspaceFolder}/*.cpp", "-std=c++11", "-o", "main"]
}
]
}

在helloworld目录下创建main.cpp,并编写如下代码

#include <iostream>

int main(int argc, char* argv[]) {
std::cout << "Hello world!" << std::endl;
return 0;
}

最终的目录结构如下:

\-helloworld
\---.vscode
\------launch.json
\------tasks.json
\---main.cpp

6. 调试代码

由于上面的helloworld代码是在共享目录中,所以这里代码会实时共享到ubuntu虚拟机中。

在ubuntu虚拟机中,打开VSCode,打开共享目录中的helloworld项目,打开调试界面(Ctrl + Shift + D),点击调试即可。

这样就可以在代码中打断点和调试代码了。

这里之所以在ubuntu中调试代码,是因为在Windows安装C/C++的编译器实在太麻烦了。

但是在虚拟机中编写代码又不方便,所以想到了这个方法,在Windows平台编写代码,在Ubuntu平台编译调试代码。



关注公众号,一起学习,一起进步。

Windows系统VSCode、VBox搭建C/C++开发环境的更多相关文章

  1. 【转】windows和linux中搭建python集成开发环境IDE

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  2. windows和linux中搭建python集成开发环境IDE——如何设置多个python环境

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  3. 在Windows系统中安装集成的PHP开发环境

    原文:在Windows系统中安装集成的PHP开发环境 刚想学php的,又不会配置复杂php的环境,可以使用集成的,目前网上提供常用的PHP集成环境主要有AppServ.phpStudy.WAMP和XA ...

  4. Windows下用Eclipse搭建C/C++开发环境

    本文假定你已经熟悉Java,Eclipse的安装,并能顺利启动和运行Eclipse.此外因为各软件版本在不断更新,有些地方可能不准确,以最新的.原文资料为准. 距上一次写和调C++程序,已经5.6年了 ...

  5. vscode下搭建vue.js开发环境(基于最新的@Vue/cli 4.2.2)

    2020-02-13. 网上的那些怎么安装vue环境的2.x就不要再看了,都过时了,现在去官网下载,按照他们的设置各种问题.接下来看下最新的安装方法. 前四步是一样的: 1.下载并安装vscode 2 ...

  6. CentOS7 系统基于Vim8搭建Go语言开发环境

    链接:https://pdf.us/2018/11/10/2194.html 问题1:vim-go: could not find 'gopls'. Run :GoInstallBinaries to ...

  7. 干货分享:在Windows下使用Visual Studio搭建C语言开发环境

    前言:本文将教大家如何使用 VIsual Studio Code 搭建 C 语言开发环境,包括使用 VS Code 如何编译和调试 C 语言程序,需要 用到的工具有 Visual Studio Cod ...

  8. 「C语言」在Windows平台搭建C语言开发环境的多种方式

    新接触C语言,如何在Windows下进行C语言开发环境的搭建值得思考并整理. 以下多种开发方式择一即可(DEV C++无须环境准备). 注:本文知识来源于  Windows 平台搭建C语言集成开发环境 ...

  9. Windows下搭建Spark+Hadoop开发环境

    Windows下搭建Spark+Hadoop开发环境需要一些工具支持. 只需要确保您的电脑已装好Java环境,那么就可以开始了. 一. 准备工作 1. 下载Hadoop2.7.1版本(写Spark和H ...

随机推荐

  1. 02.vue-router的进阶使用

    关键字:路由懒加载,全局导航守卫,组件导航守卫,redirect重定向,keep-alive,params,query 一.目录结构            二.index.js // 配置路由相关的信 ...

  2. Blazor server side 自家的一些开源的, 实用型项目的进度之 CEF客户端

    距离上次提出 [Asp.Net Core] Blazor Server Side 扩展用途 - 配合CEF来制作带浏览器核心的客户端软件 的想法后, 差不多2个星期了. 这个玩意也做了一半, 自用是没 ...

  3. airpods2隐藏的使用技巧(十)点

    airpods的凭借出色的外观.不错的音质以及非常人性化的用户体验秒杀了同类型的许多真无线蓝牙耳机,以下是第二代产品airpods2一些使用的技巧,推荐给大家.   一. 随时随地查看airpods2 ...

  4. eclipse中testNG的两种安装方式

    今天给大家带来两种关于testNG中的安装方式:1.在线安装(本人亲测有效!!!)2.离线安装 一.在线安装testNG插件的步骤: 1.给大家提供一个testNG在线的安装的地址:http://dl ...

  5. Js中Array 函数使用方法

    遇到数组有关操作,脑子第一反应不要再是嵌套 for 循环了,Array 类型提供了一些遍历有关的函数. Array.prototype.forEach() : 把数组每个元素丢到一个处理 functi ...

  6. 跟着视频学python,Day1

    python介绍 发展史 安装 Hello World程序 变量 用户输入 模块初识 数据类型初识 条件表达式if...elif...else 循环表达式while 循环表达式for python介绍 ...

  7. [51nod1577]异或凑数

    题目   点这里看题目. 分析   以下设\(k=\lfloor\log_2(\max a)\rfloor\).   关于异或凑数的问题自然可以用线性基处理,即如果可以插入到线性基,就说明无法凑出这个 ...

  8. Ultra-QuickSort (求逆序数+离散化处理)、Cows、Stars【树状数组】

    一.Ultra-QuickSort(树状数组求逆序数) 题目链接(点击) Ultra-QuickSort Time Limit: 7000MS   Memory Limit: 65536K Total ...

  9. 测试必备工具之最强抓包神器 Charles,你会了么?

    前言 ​ 作为软件测试工程师,大家在工作中肯定经常会用到各种抓包工具来辅助测试,比如浏览器自带的抓包工具-F12,方便又快捷:比如时下特别流行的Fiddler工具,使用各种web和APP测试的各种场景 ...

  10. GetLastError返回值含义

    GetLastError的返回值的含义: (0)-操作成功完成. (1)-功能错误. (2)- 系统找不到指定的文件. (3)-系统找不到指定的路径. (4)-系统无法打开文件. (5)-拒绝访问. ...