Linux下C程序编写(VS Code)

1. 安装插件(常用)

插件 说明
Chinese (Simplified) Lanague Package 中文语言插件
C/C++ C/C++基础包
Remote Development 会安装一堆包括SSH remote的插件
Code Runner 代码运行器
Visual Studio IntelliCode 自动联想coding内容
Makefile Creator Makefile自动生成
Code Spell Checker 代码拼写错误自动检测
Vscode-icons 按照文件后缀名自动分类语言
Bracket Pair Colorizer 括号配对自动加上颜色

2. 编译方法

Linux中编译c语言的方法:

  • 生成中间code,分两步编译
    gcc -c test.c -o test.o //汇编成目标.o文件(中间文件二进制)
    gcc test.o -o test //将中间文件编译成可执行文件test
  • 直接生成可执行文件
    gcc -g -o -wall test.c -o test //将test.c文件直接编译成可执行文件

3. VS Code远程连接

  • Linux主机需要安装ssh-server
    sodu apt-get install openssh-server
  • Windows需要安装ssh-client
  • VS Code中安装Remote Development插件
  1. 通过ctrl+shift+p打开设置Remote-SSH-Settings,设置Remote.SSH:Show Login Terminal为true
  2. 选择Remote-SSH:Connect to Host->Configure SSH Hosts->选择一个config文件
    Linux下C程序编写(VS Code)
    Host是连接名,Hostname是主机地址,user是登录账号,port是端口号
  3. 输入完成好,连接完成,输入用户密码就可以远程连接了
    Linux下C程序编写(VS Code)
    Linux下C程序编写(VS Code)

4. Debug方法

Linux下C程序编写(VS Code)
选中.c文件,通过ctrl+shift+p,选择c/c++:Build and Debug Active File, 选择gcc5
Linux下C程序编写(VS Code)
会自动生成,launch.json和tasks.json
launch.json的preLauchTask指向task的label,在task中设置编译的方法。
例如: -o (生成文件)-l 链接库文件等等。
Linux下C程序编写(VS Code)
Linux下C程序编写(VS Code)
然后,选择.c文件,设置断点,F5或者运行菜单启动调试运行,就可以debug了。
Linux下C程序编写(VS Code)

5. VS Code预定义变量汇总

在vscode中定义了一些变量,在配置任务脚本时,可能会用到。本文以tasks.json脚本为例,介绍各个变量的含义。

假设当前workspace的路径为:/home/TestSource,选中tasks.json, workspace文件夹下的结构如下(+表示下一层):

/home/TestSource
+.vscode
++tasks.json
++launch.json
+main.cpp

变量 说明
${workspaceFolder} 表示当前workspace文件夹路径,也即/home/TestSource
${workspaceRootFolderName} 表示workspace的文件夹名,也即TestSource
${file} 文件自身的绝对路径,也即/home/TestSource/.vscode/tasks.json
${relativeFile} 文件在workspace中的路径,也即.vscode/tasks.json
${fileBasenameNoExtension} 当前文件的文件名,不带后缀,也即tasks
${fileBasename} 当前文件的文件名,tasks.json
${fileDirname} 文件所在的文件夹路径,也即/home/TestSource/.vscode
${fileExtname} 当前文件的后缀,也即.json
${lineNumber} 当前文件光标所在的行号
${env:PATH} 系统中的环境变量