日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

在此文章中,我將與您分享一些有關為Visual Studio Code編輯器配置和使用我們全新的C/C++test靜態分析擴展的提示。

Visual Studio Code(VS Code)編輯器的普及正在迅速增長。在最新的Stack Overflow年度開發人員年度調查中,VS Code占據了開發環境和工具類別。

它快速、簡單、可自定義、可擴展,并且可以在三個領先的開發平臺上運行:windows,linux和mac。它的受歡迎程度不僅限于使用JAVAScript或TypeScript開發的團隊。我們經??吹剿挥糜陂_發安全關鍵的C/C++軟件。

VS Code得到了市場上廣泛的擴展生態系統的支持。但是,C/C++靜態分析的擴展數量有限。

4月2020.1版Parasoft C/C++test發布之前,沒有什么可以幫助您遵守MISRA,CERT和AUTOSAR C++編碼標準的,而無需離開編輯器檢查結果。我的意思是,完整的標準支持Clang-Tidy很酷,但僅涵蓋了這些標準的一小部分。

我們決定填補這一空白,并為這個出色的編輯器提供擴展,以幫助您根據自己喜歡的編碼標準檢查您剛剛編寫的代碼,查看結果并修復或隱藏它們——所有這些均在VS Code內部。

在本文中,我將重點介紹C/C++的靜態分析,但我們還支持帶有Parasoft dotTEST靜態分析擴展功能的C#。

如何開始使用VS Code的C/C++test

使用Visual Studio Code編輯器的Parasoft靜態分析擴展來啟動和運行的最簡單方法是通過Microsoft Marketplace。

啟動VS Code,然后轉到擴展程序(Ctrl + Shift + X)。在搜索字段中,鍵入“C++test”并安裝擴展。

安裝后,擴展程序將通過以下消息歡迎您:

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

該消息告知,為了運行帶有VS Code擴展名的靜態分析,您需要下載C/C++test Standard,這是C/C++test Visual Studio使用的命令行靜態分析引擎。代碼擴展。

下載C/C++test Standard發行版后,只需將其解壓縮到您喜歡的任何目錄中,然后安裝試用(或完整)許可證。您的許可證需要包含命令行功能。您可以通過編輯分發主目錄中的cpptestcli.properties文件來安裝許可證,或將cpptestcli.properties文件放在您的主目錄中,然后在其中放置許可信息。

對于此處的實驗,我們使用C/C++test附帶的Timer示例項目。在VS Code中,切換到Explorer,然后使用“將文件夾添加到工作區...”將<C/C++test install dir>/examples/Timer文件夾添加到您的工作區。

執行擴展的簡單配置,請在狀態欄中單擊C/C++test快速入門:

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

您會看到以下配置選項:

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

設置如下:

  • 選擇C/C++test安裝:指向解壓縮C/C++test Standard的位置。
  • 選擇編譯器配置:如果您使用的是GCC 9.2,則選擇與您的項目所使用的最接近的編譯器,例如“GNU GCC 9.x (x86_64)”。
  • 選擇測試配置:定義將使用哪些靜態分析檢查器來掃描您的項目。讓我們保持默認設置。

對于您的實際項目,您可能需要配置其他設置才能開始使用靜態分析。我們稍后再討論?,F在,已經進行了這些設置,請在資源管理器中選擇Timer文件夾。

從上下文菜單中,選擇“C/C++test:分析所選文件…”。OUTPUT面板將開始顯示有關靜態分析后續步驟的信息。

分析完成后,“PROBLEMS”問題面板將顯示靜態分析報告的所有結果。它應如下所示:

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

您可以通過單擊“問題”面板中的行來分析發現。當您選擇一個發現時,C/C++test擴展將帶您到源代碼,您可以在其中查看報告問題的原因。

如果原因尚不清楚,請在“問題”面板中右鍵單擊結果,然后選擇“顯示<靜態分析規則>的文檔”。它將向您顯示詳細說明。

如果您希望忽略發現,請右鍵單擊并選擇“禁止違反<rule>”。此操作將在源文件中添加特殊注釋,這將阻止分析器將來報告此發現。

或者,您可以從視圖中“刪除違反<rule>的內容”,而不必在此運行中打擾它。這些菜單選項如上圖所示。

設置用于靜態分析的編譯命令行

我提到過,對于您的實際項目,您可能需要再配置一個選項才能開始使用靜態分析。這與構建信息有關,更具體地說,與編譯命令行有關。

靜態分析引擎需要知道要分析的每個文件的編譯命令行。根據項目的構建方式,可以應用不同的策略來提供此信息。

讓我們來看看我們的Timer示例如何發生。

切換到“輸出”面板,該面板仍應包含我們分析運行的輸出。

一直向上滾動。在輸出的第二行中,您應該看到擴展執行的C/C++test Standard命令行。它將從“cpptestcli”開始。有趣的部分在此命令行的末尾。

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

在這種情況下,C/C++test靜態分析引擎被告知“跟蹤”構建以獲取所需的編譯命令行信息。您也可以將此策略應用于其他構建系統。效果很好:

Cpptestcli執行在-trace選項之后指定的build命令。將自動掃描構建信息并將其保存到cpptest.bdf文件中,該文件現在在“Timer”文件夾中可見,并用作靜態分析的輸入。

一切都很好,但是如果我想重新運行靜態分析會怎樣?好吧,使用默認設置,C/C++test將重新運行您的構建。對于實際項目來說不是一個好的選擇。

更改方法如下:

  • 打開擴展名設置。
  • 點擊Ctr+Shift+P。
  • 鍵入“C/C++test: Quick Start”,然后選擇“打開設置...”。(或使用狀態欄中的C/C++test快速入門。)

您將看到如下所示的擴展程序設置:

:

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

構建信息配置是“命令行模式”設置的一部分。在設置面板中,選擇“計時器”(在“用戶和工作區”旁邊)以僅修改“計時器”文件夾的設置。

轉到命令行模式,移至末尾,然后自定義模式,將“-trace make clean all”替換為“-input ${workspaceFolder}/cpptest.bdf”,如下所示:

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

使用此設置,無論何時運行靜態分析,C/C++test都不會重新執行構建過程,而只是加載在第一次構建過程中生成的cpptest.bdf的內容,并且可以更快地執行分析。您可以在此處了解有關構建數據文件的更多信息。

設置CMake

對于那些使用CMake進行項目的人來說,還有一個選項可以簡化設置過程。C/C++test可以將可由CMake自動生成的compile_commands.json文件作為分析的輸入。

在本文中為我們的Timer示例配置compile_commands.json文件生成。

完成后,再訪問設置面板一次(Ctr+Shift+P,鍵入“C/C++test: Quick Start”,然后選擇“打開設置...”或使用“C/C++test”在狀態欄中的快速入門)。

轉到命令行模式字段,然后如下所示進行修改:

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

于是,您可以使用CMake構建自動生成的文件,并簡化設置。

擴展中還有一些其他有趣的選項和命令,我邀請您進行探索。例如,您可以從CI/CD管道中生成的文件中導入靜態分析結果,并在本地進行查看。

希望本文對Visual Studio Code編輯器的C/C++test擴展有所幫助。

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

Visual Studio代碼擴展入門:用于C/C++靜態分析的VS Code配置

點擊“了解更多”申請免費試用

分享到:
標簽:Visual Studio
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定