在wsl下运⾏c语⾔,在Windows10下在WSL中使⽤
visualstudiocode
介绍
VS code 很好⽤。
WSL很好。
所以两者结合起开使⽤爽歪歪。
在Windows上模拟Linux进⾏编译的⽅式有⼏种
1、安装MinGW,使⽤gcc或者g++进⾏编译
2、使⽤Windows连接WSL进⾏编译
本⽂介绍第⼆种
注意:Linux下的项⽬,在Windows上编译操作,1,2两种⽅案都是很好的.
要是想保持开发环境与⽣产环境⼀致,可以使⽤第⼆种.第⼀种可能使⽤的g++版本不⼀致.
⽬标
在Windows下使⽤vs code编辑Ubuntu下的代码,让其在Ubuntu下编译执⾏。
准备
window上开启Linux⼦系统
使⽤Ubuntu,配置清华⼤学的源--->这⼀步是为了加速安装软件.不懂的百度或者留⾔.
过程略
Windows上安装vs code
过程略,
插件的安装⽅式⾃⾏百度.
通过插件可以更改软件为中⽂.
操作
根据官⽹的⽅式
1、在Linux⼦系统上个⽬录,然后执⾏code .
这个命令是可以通过WSL打开Windows下的vs code编辑器
安装插件
Ctrl+shift+p打开安装插件的搜索条
c/c++
remote-wsl
c++Intellisence
安装插件的时候注意:
需要在WSL中再次安装,双击插件名字旁边的在wsl中安装即可安装.
需要在WSL中安装g++ gcc---->⾃⾏百度解决
2、新建⼀个hello.cpp⽂件
⾥⾯写上C++输出hello world的代码
#include
#include
#include
using namespace std;
int main()
{
vector msg{"hello world", "你好"};
for (const string &word : msg)
{
/* code */
cout << word << " ";
}
cout << endl;
}
配置
这三个⽂件是通过设置⾃动⽣成的.
在你当前的⽬录下会⽣成⼀个.vscode的⽬录,这个⽬录⾥存放着三个⽂件.
这三个⽂件是控制着这个⼯程如何运作的.
配置完这三个⽂件就可以运⾏代码了.
c_cpp_properties.json (编译器路径和IntelliSense设置)
tasks.json (任务执⾏)
visual studio和vs code的区别launch.json (调试器设置)
tasks.json
tasks.json⽂件来告诉VS Code如何构建(编译)程序
从主菜单中,选择Terminal > Configure Default Build Task。在下拉列表中,将显⽰任务下拉列表,其中列出了C ++编译器的各种预定义构建任务。选择g ++ build active file,它将构建当前在编辑器中显⽰(活动)的⽂件。
⽣成⼀个模板⽂件如下:
这⾥没啥要修改的.
参数说明:
command设置指定要运⾏的程序;在这种情况下是g ++。
args数组指定将传递给g ++的命令⾏参数。必须按照编译器期望的顺序指定这些参数。
此任务告诉g ++获取活动⽂件(${file}),对其进⾏编译,然后在当前⽬录(${fileDirname})中创建⼀个与活动⽂件同名但没有扩展名(${fileBasenameNoExtension})的可执⾏⽂件.
label值就是您将在任务列表中看到的值;您可以随意命名。这个label就是在构建的时候出现在vscode编辑器输出内容的窗⼝的名字.你可以⽤中⽂
要运⾏中定义的构建任务tasks.json,请按Ctrl + Shift + B或从终端主菜单中选择“ 任务:运⾏构建任务”。就可以执⾏了.
要是想运⾏多个CPP⽂件:您可以tasks.json使⽤"*.cpp"代替的参数来修改以构建多个C ++⽂件${file}。您也可以通过替换"${fileDirname}/${fileBasenameNoExtension}"
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "g++ build active file",
"command": "/usr/bin/g++",
"args": ["-g", "${file}", "-o", "${fileDirname}/${fileBasenameNoExtension}"],
"options": {
"cwd": "/usr/bin"
},
"problemMatcher": ["$gcc"],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
launch.json
接下来,您将创建⼀个launch.json⽂件来配置VS Code,以在您按F5调试程序时启动GDB调试器。
从主菜单中,选择“ 调试” >“ 添加配置...”,然后选择“ C ++(GDB / LLDB)”。
VS Code创建⼀个launch.json⽂件,在编辑器中将其打开,然后⽣成并运⾏“ helloworld”。
参数说明
program设置指定要调试的程序。在这⾥,它被设置为活动⽂件⽂件夹\({fileDirname}和活动⽂件名,不带扩展名\) {fileBasenameNoExtension},如果helloworld.cpp是,则为活动⽂件helloworld。
默认情况下,C ++扩展不会在您的源代码中添加任何断点,并且其stopAtEntry值设置为false。将stopAtEntry值更改true为会导致调试器main在启动调试时在该⽅法上停⽌。(⼀般设置为false,如果是true则会在main的位置产⽣断点)
{
"version": "0.2.0",
"configurations": [
{
"name": "g++ build and debug active file",
"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": "g++ build active file",
"miDebuggerPath": "/usr/bin/gdb"
}
]
}
c_cpp_properties.json
如果要对C / C ++扩展进⾏更多控制,则可以创建⼀个c_cpp_properties.json⽂件,该⽂件将允许您更改设置,例如编译器的路径,包含路径,C ++标准(默认为C ++ 17)等。
您可以通过运⾏命令C / C ++:从命令⾯板(Ctrl + Shift + P)编辑配置(UI)来查看C / C ++配置UI 。
这将打开“ C / C ++配置”页⾯。当您在此处进⾏更改时,VS Code会将其写⼊到⽂件夹中称为c_cpp_properties.json的.vscode⽂件中。
仅当程序包含不在⼯作空间或标准库路径中的头⽂件时,才需要修改“ 包含路径”设置。
配置的json内容如下:
{
"configurations": [
{
"name": "Linux",
"includePath": ["${workspaceFolder}/**"],
"defines": [],
"compilerPath": "/usr/bin/gcc",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "clang-x64"
}
],
"version": 4
}
通过以上的设置,你就可以在Windows上使⽤vscode操作WSL⾥⾯的⼯程了.总结
这么做好像有点脱裤⼦放屁.
但是可以在vscode安装vim插件,在vscode中使⽤vim了啊
哈哈哈哈
注意:下⾯的参考链接就是官⽹的.看图的话参考官⽹.
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论