日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > linux >内容正文

linux

vscode 头文件包含问题_WSL+VSCode = Linux ?

發(fā)布時(shí)間:2023/12/4 linux 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vscode 头文件包含问题_WSL+VSCode = Linux ? 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

官方文檔?code.visualstudio.com使用VSCode新推出的Remote功能來(lái)連接WSL或服務(wù)器進(jìn)行開(kāi)發(fā). 可以在Windows上享受優(yōu)秀的界面體驗(yàn)的同時(shí)使用Linux環(huán)境進(jìn)行開(kāi)發(fā)(還是要感謝無(wú)數(shù)的VSCode插件貢獻(xiàn)者).

環(huán)境基礎(chǔ)配置

  • Visual Studio Code最新版本
  • 注意點(diǎn):

    • 安裝時(shí)需要勾選環(huán)境變量添加到path
    • 在插件中心安裝Remote-WSL、Remote-SSH、Remote Development基礎(chǔ)插件;
  • WSL環(huán)境
  • 注意點(diǎn):

    • 推薦使用Ubuntu 18, 其他沒(méi)試過(guò);
    • 安裝成功之后進(jìn)行初始化相關(guān)工作, 配置密碼之類(lèi)的;

    使用WSL打開(kāi)VSCode

  • 打開(kāi)WSL terminal(打開(kāi)Power shell輸入wsl/bash, 或者直接搜索Ubuntu打開(kāi));
  • 找個(gè)想要打開(kāi)的項(xiàng)目, 注意WSL和Win的目錄結(jié)構(gòu)不同, Windows的C盤(pán)在/mnt/c下面, 可以先切到工作目錄;
  • 在命令行里敲code ., 第一次使用時(shí), 會(huì)看到VS Code的組件被提示需要安裝, 稍等一會(huì)兒, 這種情況只有首次使用會(huì)出現(xiàn), 之后就可以直接使用code 文件夾的方式使用VS Code打開(kāi), 并且是以Linux環(huán)境的模式Note: 如果code這個(gè)命令無(wú)效的話, 需要在VS Code安裝時(shí)把path添加到環(huán)境變量里去, 或者后期手動(dòng)自己加.
  • 之后就可以看到VSCode的窗口出現(xiàn)了, 可以在下方看到VSCode正在以WSL方式打開(kāi)文件夾的通知;
  • 一旦完成之后, 下次可以直接在歷史文件夾里打開(kāi)項(xiàng)目, 或者從命令行里打開(kāi)新項(xiàng)目, 以及VS Code里打開(kāi);
  • 最近項(xiàng)目:

    VSCode Ctrl + O打開(kāi):

    命令行打開(kāi):

    開(kāi)發(fā)配置實(shí)例一 C語(yǔ)言

    使用WSL開(kāi)發(fā)調(diào)試C語(yǔ)言的配置, 可以實(shí)現(xiàn)開(kāi)發(fā)調(diào)試, 代碼檢查, 智能提示等功能, 并且調(diào)試的變量參數(shù)可以自定義, 能夠更好的理解開(kāi)發(fā)調(diào)試的過(guò)程.

    基礎(chǔ)環(huán)境要求

    前提要求是WSL中安裝了gcc(使用 sudo apt update和 sudo apt install gcc命令來(lái)安裝, 以及在VSCode中安裝C/C++開(kāi)發(fā)插件.

    建立基礎(chǔ)文件

    main.c:

    #include <stdlib.h>#include <stdio.h>// 頭文件, 其中add函數(shù)和sub函數(shù)的定義在其中#include "func1.h"#include "func2.h"?int main(int argc, char const *argv[]){int a = 10, b = 20;// 調(diào)用其他文件內(nèi)定義的函數(shù)printf("a add b = %dn", add(a, b));printf("a sub b = %dn", sub(a, b));printf("hello worldn");return 0;}

    依賴(lài)的頭文件func1和func2函數(shù)文件:

    // func1.h: 函數(shù)定義extern int sub(int a, int b);?// func1.c: 函數(shù)實(shí)現(xiàn)#include "func1.h"?int sub(int a, int b){return a - b;}?// func2.h: extern int add(int a, int b);?// func2.c:#include "func2.h"?int add(int a, int b){return a + b;}

    添加調(diào)試配置

    記得先打開(kāi)main.c文件, 看下底邊欄的信息, 確認(rèn)是否被自動(dòng)識(shí)別為C文件, 這一步很重要, 否則后面創(chuàng)建的配置會(huì)出問(wèn)題(畢竟是編輯器, 不是IDE, 配置略微繁瑣了些)

    在Debug欄下創(chuàng)建launch.json文件:

    接下來(lái)選擇配置

    選擇第二個(gè)gcc(因?yàn)槲覀冎谎b了gcc )

    可以看到目錄中多了個(gè).vscode文件夾, 文件夾下有l(wèi)aunch.json文件, 這是VSCode的項(xiàng)目配置信息文件夾, 包含項(xiàng)目的配置和命令信息.

    開(kāi)始調(diào)試

    打開(kāi)main文件, 添加斷點(diǎn)

    按下微軟的經(jīng)典調(diào)試按鈕F5

    報(bào)錯(cuò)了, 提示有未定義的引用add和sub, 原因是這倆函數(shù)的實(shí)現(xiàn)不在main.c中, 默認(rèn)的編輯命令在task.json中只編譯了main.c

    修改為所有的.c文件, 正則匹配

    接下來(lái)F5, 單步調(diào)試, 變量等等

    命令行執(zhí)行結(jié)果

    總結(jié)

    以上是生活随笔為你收集整理的vscode 头文件包含问题_WSL+VSCode = Linux ?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。