CLion調試與使用


CLion簡單調試與使用

這里先放一波學長的教程鏈接CLion入門教程

還有安裝教程CLion安裝與學生認證(沒有下載安裝CLion的先看這個,里面還有關於學生認證的教程)

學長的教程里大概講了一些關於Clion安裝,以及一些使用的鋪墊

我就大概對學長博客的內容進行一些補充和說明

先簡單說一下CLion的一些小問題:

  • Clion不方便在軟件內部保存文件,

    所以需要寫完代碼后單獨創建一個新文件來保存(於是vscode在我這里已經變成了一個代碼文件夾/狗頭),當然你也可以選擇用dev保存

    同時因為Clion運行一個C文件會附帶一整個工程文件,所以不要在里面開多個C文件,一次只寫一道題的代碼,寫完及時轉移保存.

  • Clion無法進行不定行輸入(即無法ctrl+z結束讀入)

    所以需要使用freopen通過文件來實現不定行讀入

    但大部分情況下,其實題目都用不到不定行輸入,所以沒了解過freopen的可以不用管那個文件創建了.

    (不行還可以寫完代碼以后放到dev或者vscode上跑/滑稽)

  • Clion本身是一個收費的軟件

    所以大家想要使用這個最好白嫖那個學生免費的政策(似乎每一年還會重新驗證一遍,畢竟不可能一直白嫖)

    還有就是學長的博客里面只給了北航的郵箱鏈接,所以其它學校的同學最好去找一下自己學校的郵箱,按照那個教程操作一下.

接下來進入正題

1.CLion的優點

首先先和dev-c++比一比(新手入門還是可以用用,畢竟沒有對比就沒有傷害)

  • CLion能夠及時查錯,不需要編譯結束以后才報錯(這個和vscode有些類似);

  • CLion的調試(debug)界面比dev要清晰不少,能顯示更多的變量值,而且入手很簡單,看起來也清楚(

  • Clion具有代碼補全功能(可以剩下一些打變量(函數)名稱的時間,vscode也可以)

再和vscode比一比(先吐槽一下vscode的環境配置,實在有點復雜,還得自己下mingw編譯器,更多的功能(比如調試)還需要自己重新再配置)

  • Clion的控制台能顯示返回值(雖然dev也可以,vscode似乎需要進一步設置)

  • Clion不僅可以及時報錯,還有更進一步的警告功能(下面會詳細介紹),這個功能能進一步幫你避免掉很多奇怪的問題;

  • Clion可以更方便進行調試(debug)(

2.簡單調試功能介紹

(這個Clion的調試功能簡直不要太好用,直接碾壓dev和vscode)

直接上圖

這個是我的Clion調試界面

先說說Clion調試的優勢

  • Clion調試功能能同時顯示許多變量的值(包括數組)

  • Clion調試時還可以查出是否出現野指針(學數據結構這個尤其關鍵

下面介紹一下如何進行調試(debug)

  • 調試代碼前要先用鼠標打斷點

  • 之后就點我右上角圈出來的那個小蟲子

    需要注意的是,如果程序沒有經過你的斷點就會直接結束

    還有就是如果斷點前有語句需要讀入,你需要先點控制台,把讀入的東西輸進去,不然程序就跑不下去了

之后程序就會運行到你打斷點的那個位置;

  • 而之后能你就可以在下面的變量的位置看到現在程序中一些變量的值

    (經過我的實踐只會顯示一部分局部變量),因此你想要看更多的變量需要找到右下角的監視,點那個+號,輸入你需要進一步查看的變量名;

  • 然后你如果想要程序繼續往下運行就看到我左下角那兩個紅圈(這兩個建議結合使用)

    • 左邊那個是步過

      這個是指在主函數里面一步步運行,不會進入外部函數(想要進函數應該要點步入或者單步執行那兩個才行)

    • 右邊那個是運行到光標處

      這個比步過要好用一些,尤其是想快速跑循環的時候,就直接放到循環頭那里一直點這個就行了.

      大概的操作方法是:

      • 把鼠標光標點到一個語句的最后(必須要保證一定能運行到那個位置,比如if語句內部可能跑不進去,不然就會跳出來)

      • 然后點那個鍵就好了,這樣就可以實現向下跑多條語句(不用多次點步過了)

最后想說的就是這個Clion的調試功能真的很好用,可以同時看多個變量,包括數組以及指針的值,能幫你理清代碼內部的很多問題.

(對我這種經常寫些奇怪bug的人簡直太有用了,以前都是硬着頭皮debug/折磨,

不過其實那種printf("**")這種方式也還是可以用起來的,畢竟斷點調試跑起來還是有點小慢.

然后還是建議就是寫代碼的時候最好寫完一個板塊就驗證一下是否實現了想象中的功能(不然全部寫完整個大程序以后de起bug來還是相當痛苦的)

3.Clion的警告功能

這個是我讓我覺得它比vscode好用的關鍵點之一

下面介紹一下

Clion的警告功能是對你代碼一些潛在問題的警告(不是語法的問題)

比如以下幾種情況

  • 可能會出現的死循環

  • 變量值的范圍的縮小(qsort寫cmp函數時尤其關鍵

  • 全局變量和局部變量同名(小模塊和函數內部的這種情況都會警告

  • 有返回值,函數無法返回值

  • 野指針的訪問,數組的越界

  • 未訪問的變量或函數(有時候這個無傷大雅可以不用在意)

等等這些情況Clion都會對你進行警告(但其實有一些無關緊要的警告可以不care,只要程序能跑問題都不大

(像什么沒用過的函數,函數庫還有一些明知的范圍縮小,我好像都沒怎么管過hhh)

在這樣精明的警告功能下,能讓你對程序可能出現的一些問題未卜先知,能避免后續的不少奇怪問題。(反正我用了以后debug效率直線上升,不過還是建議把主體思路想清楚,還有一些細節考慮一下再開始寫代碼,全部都現改還是容易把頭緒弄亂。

4.一些細節補充

就是Clion和vscode一樣也可以下一些插件(點右上角的設置-插件來下載)來更改字體和主題什么的,下面我推薦幾個我自己用的

  • One dark pro theme / Coderpillr theme (這兩個都是主題,看喜好下一個就好)

  • Rainbow Brackets(改變括號顏色的)

  • Chinese(Simplified) language pack(中文語言包)(這個就不多說了..

然后還有就是clion可以插一個透明背景圖(圖片得自己找..),這里我就不細說了直接放CSDN上的教程吧Clion背景設置

最后如果大家還有些別的什么問題,可以再去百度或者CSDN上搜一搜(畢竟我也還在摸索中);

大概就寫到這里吧,希望能通過這個介紹CLion這個編輯器幫助更快的找出程序的bug,能夠不再被奇怪的bug困擾(不要像我學程設的時候半夜做夢都在debug了...).

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM