0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

高手分享C語言調(diào)試經(jīng)驗

Q4MP_gh_c472c21 ? 來源:未知 ? 作者:胡薇 ? 2018-05-11 17:02 ? 次閱讀

很多同學(xué)在寫C語言時,感覺最難的不是程序怎么寫,而是程序?qū)懲炅嗽趺凑{(diào)試。程序?qū)懗鰜砹?,自己檢查著沒有錯誤,但一運(yùn)行卻出現(xiàn)一大堆錯誤,好不容易、好不容易改的沒錯誤了,一運(yùn)行卻不出正確結(jié)果,然后又小心戀戀的改動一處,忽然又冒出一大堆錯誤來,再后來呢,稀里嘩啦一陣亂響之后,便“飄然而去”。

今天,總結(jié)了一些的經(jīng)驗與大家一起交流,如有不當(dāng)之處肯請大家指正。

產(chǎn)生這種情況的原因是基本知識掌握不牢,基本語法掌握不靠,練習(xí)做的太少,調(diào)試功夫不到家所致。掌握了正確的調(diào)試技巧,多多練習(xí),這種情況應(yīng)該能比較快的解決。

程序的調(diào)試非常重要,不只是C語言,對于所有語言來說都是如此,掌握好的調(diào)試方法,可以事半功倍。下面說一下程序已經(jīng)沒有編譯錯誤,能夠運(yùn)行,但又得不出正確結(jié)果的情況下的程序的常用常見調(diào)試方法:

1、追蹤方式執(zhí)行(Trace):一步一步執(zhí)行,遇到函數(shù)調(diào)用,追蹤到調(diào)用函數(shù),一步一步執(zhí)行。

2、單步方式執(zhí)行(step):一步一步執(zhí)行,遇到函數(shù)調(diào)用,調(diào)用語句作為一步執(zhí)行

3、下斷點(breakpoint):設(shè)置斷點,當(dāng)程序執(zhí)行到斷點時,程序暫停執(zhí)行。

4、執(zhí)行到光標(biāo)所在處(go to cursor):相當(dāng)于一個斷點。

5、監(jiān)視(watches):隨時監(jiān)視某些變量或?qū)ο笾档淖兓闆r。

常用常見的就是這五種方法。以上方法適用于程序已經(jīng)沒有編譯錯誤,能夠運(yùn)行,但又得不出正確結(jié)果的情況。在程序的調(diào)試過程中,監(jiān)視某些變量或?qū)ο笾档淖兓闆r是很重要的一部分,前四種執(zhí)行方式與值的監(jiān)視配合使用,能準(zhǔn)確定位錯誤所在,可以具體到是哪一行出現(xiàn)錯誤。

如果怎么調(diào)都有編譯錯誤怎么辦呢?這是練習(xí)做的太少,基礎(chǔ)不是太好的緣故。這需要再下點功夫,再多做點練習(xí)。程序?qū)懚嗔耍?dāng)出現(xiàn)一種錯誤時,就知道大體是什么原因造成的了。網(wǎng)上和教材上有專門論述出錯信息及錯誤處理的文章,個人覺得這類文章大部分不太適合初學(xué)者看。

出錯信息都是E文,不是太明白怎么辦?可以用金山快譯翻譯一下,盡量避免下次再犯錯。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 調(diào)試
    +關(guān)注

    關(guān)注

    7

    文章

    551

    瀏覽量

    33763
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7575

    瀏覽量

    134153

原文標(biāo)題:寫程序簡單一調(diào)試就頭疼?高手分享C語言調(diào)試經(jīng)驗

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    C語言打印程序行號、日期方便調(diào)試程序

    平時開發(fā)C語言程序時,經(jīng)常需要調(diào)試代碼,C語言有一些宏,可以打印出當(dāng)前的行號、文件名稱、日期、時間,對程序的
    的頭像 發(fā)表于 09-09 11:43 ?2581次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>打印程序行號、日期方便<b class='flag-5'>調(diào)試</b>程序

    嵌入式C語言代碼優(yōu)化的經(jīng)驗與方法

    在本篇文章中,收集了很多經(jīng)驗和方法。應(yīng)用這些經(jīng)驗和方法,可以幫助我們從執(zhí)行速度和內(nèi)存使用等方面來優(yōu)化C語言代碼。
    發(fā)表于 02-02 09:17 ?295次閱讀

    嵌入式C語言代碼優(yōu)化的經(jīng)驗與方法

    在本篇文章中,收集了很多經(jīng)驗和方法。應(yīng)用這些經(jīng)驗和方法,可以幫助我們從執(zhí)行速度和內(nèi)存使用等方面來優(yōu)化C語言代碼。
    發(fā)表于 03-08 13:27 ?237次閱讀

    如何成為一名嵌入式C語言高手?

    如何成為一名嵌入式C語言高手? 嵌入式系統(tǒng)是當(dāng)今科技領(lǐng)域的核心,而C語言則是嵌入式系統(tǒng)開發(fā)中最常用的編程
    發(fā)表于 03-25 14:12

    如何成為一名嵌入式C語言高手?

    如何成為一名嵌入式C語言高手? 嵌入式系統(tǒng)是當(dāng)今科技領(lǐng)域的核心,而C語言則是嵌入式系統(tǒng)開發(fā)中最常用的編程
    發(fā)表于 04-07 16:03

    寫程序簡單一調(diào)試就頭疼?分享一些C語言調(diào)試經(jīng)驗

    寫程序簡單一調(diào)試就頭疼?分享一些C語言調(diào)試經(jīng)驗很多同學(xué)在寫C
    發(fā)表于 07-21 21:13

    編程高手箴言

    編程高手箴言:本書是作者十余年編程生涯中的技術(shù)和經(jīng)驗的總結(jié)。內(nèi)容涵蓋了從認(rèn)識CPU、Windows運(yùn)行機(jī)理、編程語言的運(yùn)行機(jī)理,到代碼的規(guī)范和風(fēng)格、分析方法、調(diào)試方法和內(nèi)核
    發(fā)表于 07-10 17:20 ?0次下載
    編程<b class='flag-5'>高手</b>箴言

    Dragon Board410c Audio 調(diào)試經(jīng)驗(2)概述

    Dragon Board410c Audio 調(diào)試經(jīng)驗(2)概述,我上傳了很多相關(guān)資料,感興趣的可以去我上傳的資料里看看哈。
    發(fā)表于 06-30 15:03 ?2次下載

    Dragon Board410c Audio 調(diào)試經(jīng)驗(1)概述

    Dragon Board410c Audio 調(diào)試經(jīng)驗(1)概述,我上傳了很多相關(guān)資料,感興趣的可以去我上傳的資料里看看哈。
    發(fā)表于 06-30 15:03 ?2次下載

    串口調(diào)試小程序火災(zāi)報警器調(diào)試工具C語言程序免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是串口調(diào)試小程序火災(zāi)報警器調(diào)試工具C語言程序免費下載。
    發(fā)表于 10-22 17:39 ?36次下載
    串口<b class='flag-5'>調(diào)試</b>小程序火災(zāi)報警器<b class='flag-5'>調(diào)試</b>工具<b class='flag-5'>C</b><b class='flag-5'>語言</b>程序免費下載

    KEIL調(diào)試經(jīng)驗與技巧分享

    KEIL調(diào)試方法,到底該怎么使用這些方法呢?這篇文章將介紹個人的調(diào)試經(jīng)驗
    的頭像 發(fā)表于 09-21 09:58 ?6412次閱讀
    KEIL<b class='flag-5'>調(diào)試</b><b class='flag-5'>經(jīng)驗</b>與技巧分享

    程序調(diào)試經(jīng)驗 for MCU

    程序調(diào)試經(jīng)驗 for 瑞薩R7F0C004
    發(fā)表于 10-25 13:51 ?12次下載
    程序<b class='flag-5'>調(diào)試</b><b class='flag-5'>經(jīng)驗</b> for MCU

    KEIL調(diào)試經(jīng)驗總結(jié)

    KEIL 調(diào)試方法,但是到底該怎么使用這些方法呢?這篇文章將介紹個人的調(diào)試經(jīng)驗。
    的頭像 發(fā)表于 02-10 11:42 ?3828次閱讀
    KEIL<b class='flag-5'>調(diào)試</b><b class='flag-5'>經(jīng)驗</b>總結(jié)

    升壓變流器的幾點調(diào)試經(jīng)驗

    升壓變流器的幾點調(diào)試經(jīng)驗
    發(fā)表于 11-02 08:16 ?0次下載
    升壓變流器的幾點<b class='flag-5'>調(diào)試</b><b class='flag-5'>經(jīng)驗</b>

    嵌入式C語言代碼優(yōu)化經(jīng)驗與方法

    在本篇文章中,收集了很多經(jīng)驗和方法。應(yīng)用這些經(jīng)驗和方法,可以幫助我們從執(zhí)行速度和內(nèi)存使用等方面來優(yōu)化C語言代碼。 簡介 在最近的一個項目中,我們需要開發(fā)一個運(yùn)行在移動設(shè)備上但不保證圖像
    的頭像 發(fā)表于 02-09 01:21 ?526次閱讀