徐松亮软件应用教学-基于Visual Studio Code的C语言开发环境搭建

版权声明:本文为博主徐松亮的原创作品,未经允许不得转载,多谢支持!QQ:5387603

推荐点击此链接:欢迎进入徐松亮博客一站式导航搜索(随时更新)


工欲善其事,必先利其器。后续,本博主要带领大家,会做多种数据算法和数据结构的实现,比如说内存管理,排序,三次样条,二叉树,九宫格,蚁群算法。。。这些主要用C语言来实现。虽然其他语言有现成的库,但因为本人主要擅长的是做嵌入式产品开发,目前大多数嵌入式芯片资源仍然有限,主流的开发语言仍然是C语言,所以,我们当前还是以C语言为主,逐步会融入python等。

目录

一,Visual Studio Code简介

Visual Studio Code是什么

类似的程序编辑软件:

为什么选择Visual Studio Code

二,Cygwin的安装

为什么选择Cygwin

Cygwin的安装步骤:

三,Visual Studio Code的安装

官网网站下载软件

安装软件

配置语言为中文(本人因为英文不好,所以仍然使用英文版)

四,插件的安装

安装插件:C/C++

安装插件:code runner

安装插件:Native Debug 

五,实例验证

电脑端新建文件夹

Visual Studio Code生成一个工作区

Visual Studio Code工作区加入文件夹

Visual Studio Code生成调试并修改文件launch.json

Visual Studio Code生成并修改任务文件tasks.json

Visual Studio Code执行debug

六,说明与注意事项

七,工程源码下载


一,Visual Studio Code简介

  • Visual Studio Code是什么

    • 第一眼看到它,千万别以为他是Visual Studio(微软的综合性多语言集成开发环境,安装要几个G,费用昂贵)!!!
    • Visual Studio Code也是微软出品,开源免费,跨平台(linux,MAC,windows)
    • 可按需安装插件,自己制作好用的IDE(集成开发环境)。
    • 因为支持插件的安装,可以开发python,C,C++,Java,PHP。。。语言的开发。
  • 类似的程序编辑软件:

    • 注意:不只是下面这些,只是罗列部分,蓝色为我本人常用。
    • Notepad++
    • Emacs 
    • Vim
    • Sublime Text3
    • UltraEdit
    • eclipse
    • source insight
  • 为什么选择Visual Studio Code

    • 最先声明的是,所有编辑软件存在既有价值,如果已经熟悉哪种软件,继续使用即可,没必要一定分出好坏。
    • 微软出品,大品牌,品质稳定性值得信赖。
    • 免费,开源,爽的不要不要的。
    • 多插件安装,按需构建IDE,简单方便。

二,Cygwin的安装

  • 为什么选择Cygwin

    • 基于Windows的C语言编译环境,当前主要有下面三种
      • Visual Studio:好用没话说,就是太大,安装几个G,而且常规使用不能用于嵌入式,商业收费。
      • MinGW:如果只是基于Windows开发,不错的选择,而且运行速度快。
      • Cygwin:相当于在windows环境中建立一套linux系统,运行速度略低于MinGW(所谓的慢就我们做这点代码,也是没有任何感觉的),但是因为其跨平台,本人还要做嵌入式的编译,如ESP8266,嵌入式linux产品等,所以它是我的不二选择。
  • Cygwin的安装步骤:

三,Visual Studio Code的安装

  • 官网网站下载软件

  • 安装软件

    • 逐步下一步安装即可,没有什么特殊的步骤,一路默认安装即可,在此不再贴图。
  • 配置语言为中文(本人因为英文不好,所以仍然使用英文版)

    • 安装中文语言包
    • View---Command Palette...(或者快捷键shift+ctrl+p)

四,插件的安装

  • 安装插件:C/C++

    • 功能:这个插件添加了对c/c++语言的支持,包括代码格式化、智能感知、代码浏览等,但不包含编译。
    • 安装截图:
  • 安装插件:code runner

    • 功能:
      • 可以动态的运行选中的代码区块。
      • 为多种语言运行代码片段或代码文件:C, C++, Java, JavaScript, PHP, Python, Perl, Perl 6, Ruby, Go, Lua, Groovy, PowerShell, BAT/CMD, BASH/SH, F# Script, F# (.NET Core), C# Script, C# (.NET Core), VBScript, TypeScript, CoffeeScript, Scala, Swift, Julia, Crystal, OCaml Script, R, AppleScript, Elixir, Visual Basic .NET, Clojure, Haxe, Objective-C, Rust, Racket, AutoHotkey, AutoIt, Kotlin, Dart, Free Pascal, Haskell, Nim, D, 和定制命令。
    • 安装截图:
  • 安装插件:Native Debug 

    • 功能
      • 用于gdb图形化调试你的C/C++程序
      • 支持GDB和LLDB
    • 安装截图:

五,实例验证

  • 电脑端新建文件夹

    • 目的:用于存放工作区,在此我建立如下文件夹。
    • 在visual_studio_code_c_test文件夹里建立code文件夹,在code文件夹建立一个c程序文件:
      • 在xsl_test.c中写入如下实例代码:
      • #include <stdio.h>
            
        int main (int argc, char **argv)
        {
            int x = 0;
            int y = 1;
            printf("xsl test:g_var = %d, l_var = %d.\r\n", x, y);
            return 0;
        }
  • Visual Studio Code生成一个工作区

    • File---Save Workspace as...
  • Visual Studio Code工作区加入文件夹

  • Visual Studio Code生成调试并修改文件launch.json

    • 此时,会建立出一个launch.json的文件,我们把如下代码替换原代码
    • {
          "version": "0.2.0",
          "configurations": [
              {
                  "name": "C++ Launch (GDB)",                 // 配置名称,将会在启动配置的下拉菜单中显示
                  "type": "cppdbg",                           // 配置类型,这里只能为cppdbg
                  "request": "launch",                        // 请求配置类型,可以为launch(启动)或attach(附加)
                  "launchOptionType": "Local",                // 调试器启动类型,这里只能为Local
                  "targetArchitecture": "x86",                // 生成目标架构,一般为x86或x64,可以为x86, arm, arm64, mips, x64, amd64, x86_64
                  "program": "${file}.exe",                   // 将要进行调试的程序的路径
                  "miDebuggerPath":"D:/cygwin64/bin/gdb.exe", // miDebugger的路径,注意这里要与cygwin/MinGw的路径对应
                  "args": ["blackkitty",  "1221", "# #"],     // 程序调试时传递给程序的命令行参数,一般设为空即可
                  "stopAtEntry": false,                       // 设为true时程序将暂停在程序入口处,一般设置为false
                  "cwd": "${workspaceRoot}",                  // 调试程序时的工作目录,一般为${workspaceRoot}即代码所在目录
                  "externalConsole": true,                    // 调试时是否显示控制台窗口,一般设置为true显示控制台
                  "preLaunchTask": "gcc"                    // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc
              }
          ]
      }
  • 截图如下
  • Visual Studio Code生成并修改任务文件tasks.json

    • 进行到此步就可以看到工作区已经生成了tasks.json文件
    • 用如下代码替换原tasks.json代码
    • {
          "version": "2.0.0",
          "command": "gcc",//对应"preLaunchTask"c++为g++, c为gcc
          "args": ["-g","${file}","-o","${file}.exe"],    // 编译命令参数
          "problemMatcher": {
              "owner": "cpp",
              "fileLocation": ["relative", "${workspaceRoot}"],
              "pattern": {
                  "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                  "file": 1,
                  "line": 2,
                  "column": 3,
                  "severity": 4,
                  "message": 5
              }
          }
      }
    • 截图如下:
  • Visual Studio Code执行debug

    • 打开xsl_test.c文件,设定断点.
    • 执行Debug,如下图
    • 此时,应该可以看到已经进入了仿真环境,如下图:
    • 我们执行以下单指令运行命令,看终端是否能够显示打印内容:
    • 我们可以看到,终端成功显示了我们的程序打印内容。
    • 到此,可以说明,我们的环境搭建成功。

六,说明与注意事项

  • 上面执行的步骤,只是教大家建立最基本的C语言开发环境,并没有好的框架。
  • 上面的两个配置文件(launch.json和tasks.json),并不是最优配置,只够演示使用,所以有很多不合理的地方。

七,工程源码下载

发布了28 篇原创文章 · 获赞 81 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/xslxhn/article/details/83472426