?? 前言
????hello! 各位寶子們大家好啊,上一章給大家介紹了 Visual Studio 2022 快捷鍵和 版本介紹,今天就來給大家來點干貨
????今天來正式來調(diào)試環(huán)節(jié),帶大家一起看一下在調(diào)試時如何查看程序中臨時變量的值以及調(diào)用堆棧和內(nèi)存信息等 !
????本期文章收錄在《學(xué)習(xí)工具》,大家有興趣可以看看吶!
???? 歡迎鐵汁們 ?? 點贊 ?? 收藏 ?留言 ??!
?? 注:前一篇文章在這里《高效調(diào)試手段與技巧(上)》
?? 調(diào)試的時候查看程序當(dāng)前信息
?? 查看臨時變量的值
在調(diào)試開始之后,用于觀察變量的值。我們只需要選中監(jiān)視窗口就可以查看我們程序在運行中的值了,從而塊速排查錯誤!
- 一旦發(fā)現(xiàn)儲存的值和我們預(yù)期的不一樣就可以進(jìn)行
- 更改我們的代碼從而快速找到錯誤
把監(jiān)視窗口打開之后,就可以輸入變量名去監(jiān)視我們的變量值了!
?? 查看內(nèi)存信息
內(nèi)存的窗口調(diào)用和監(jiān)視是一樣,內(nèi)存窗口可以讓我們查看在內(nèi)存中一個數(shù)據(jù)是怎么存儲的,提供了一個比較好的交互界面!
到了這里就需要我們給編輯器一個地址了,這樣它才能找到我們需要找到變量的地址。去觀察它的內(nèi)存分布情況,還可以把要觀察的列設(shè)置為我們想要觀察的數(shù)量
- int 類型的變量占4個字節(jié)所以我們就只觀察4列
-== 在這里一列代表一個字節(jié)==
?? 調(diào)試實例:為什么變量不初始化是隨機(jī)值
我們在創(chuàng)建臨時變量的時候如果沒有進(jìn)行初始化,打印出來就是隨機(jī)值,而有了內(nèi)存觀察我們就可以看到為什么臨時變量不賦值是初始值了!
- 因為我們臨時變量是在??臻g的,所以一些臨時變量
- 出了自己的作用域就會銷毀,但值不會改變只是把空間還給操作系統(tǒng)
- 而我們一旦新開辟的臨時變量在原來用過的地址上創(chuàng)建的
- 那么就會是原來空間的值所以是隨機(jī)的!
?? 注:關(guān)于??臻g和 其他空間我們在 《C/C++內(nèi)存分配的幾個區(qū)域》有詳細(xì)講解!
這里我們就可以看到棧區(qū)的有些空間是隨機(jī)值,所以在創(chuàng)建變量的時候一定要賦初值!
?? 查看調(diào)用堆棧
調(diào)用堆棧這方面的功能我們在函數(shù)棧幀的創(chuàng)建于銷毀,還有數(shù)據(jù)結(jié)構(gòu) 空間復(fù)雜度是可以幫助我們很好的理解棧區(qū)和堆區(qū)的空間消耗和調(diào)用的!
- 這里可以反應(yīng)的是我們函數(shù)的調(diào)用關(guān)系邏輯
- 數(shù)據(jù)結(jié)構(gòu)里面的棧 就和我們調(diào)用堆棧差不多
?? 查看匯編信息
???? 這里面可以查看我們程序在轉(zhuǎn)換成匯編代碼是怎么樣的?比如函數(shù)調(diào)用時怎么樣的啊! for循環(huán)的轉(zhuǎn)換成功匯編的代碼是什么都可以觀察!
?? 查看寄存器信息
這里就可以觀察我們程序在運行時寄存器的變化!
?? 多多動手,嘗試調(diào)試,才能有進(jìn)步
好了到了這里常用的調(diào)試技巧就個大家講解完了,但是光看還不行我們程序出現(xiàn)問題一定要多去調(diào)試。這樣才能知道問題到底出在哪里,以后及時避免!文章來源:http://www.zghlxwxcb.cn/news/detail-609339.html
- 一定要熟練掌握調(diào)試技巧。
- 初學(xué)者可能80%的時間在寫代碼,20%的時間在調(diào)試。但是一個程序員可能20%的時間在寫程序,但是80%的時間在調(diào)試。
- 我們所講的都是一些簡單的調(diào)試。
- 以后可能會出現(xiàn)很復(fù)雜調(diào)試場景:多線程程序的調(diào)試等。
- 多多使用快捷鍵,提升效率。
??全篇總結(jié)
? 歸納:
?? 關(guān)于調(diào)試的技巧我們講完了,下一篇就給大家講講一些調(diào)試實例,只有用起來才會真正學(xué)會!
看到這里了還不給博主扣個:
?? 點贊
??收藏
?? 關(guān)注
!
?? ?? ?? ?? ???? ?? ?? ?? ?? ??
拜托拜托這個真的很重要!
你們的點贊就是博主更新最大的動力!
有問題可以評論或者私信呢秒回哦。文章來源地址http://www.zghlxwxcb.cn/news/detail-609339.html
到了這里,關(guān)于Visual Studio 2022 程序員必須知道高效調(diào)試手段與技巧(中)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!