1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. 計(jì)算機(jī)C語言編程問題分析論文

        時間:2020-06-20 12:37:28 計(jì)算機(jī)畢業(yè)論文 我要投稿

        計(jì)算機(jī)C語言編程問題分析論文

          摘要:隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,在IT行業(yè)之中C語言的地位也是愈加重要。目前,C語言程序設(shè)計(jì)課程在一般學(xué)校之中都有開設(shè),對于未學(xué)過C語言編程的高中生學(xué)生而言,在學(xué)習(xí)過程之中C語言的有些知識掌握難度較大,錯誤較易發(fā)生。對此,本文針對計(jì)算機(jī)C語言編程過程中的一些常見問題,展開簡要的分析,并提出解決辦法,以期能對其他讀者起到一定參考。

        計(jì)算機(jī)C語言編程問題分析論文

          【關(guān)鍵詞】計(jì)算機(jī);C語言編程;常見問題

          C語言作為一種面向過程的計(jì)算機(jī)語言,擁有著豐富的數(shù)據(jù)類型與運(yùn)算符,它有著極強(qiáng)的處理能力與表現(xiàn)能力,能使各類復(fù)雜的數(shù)據(jù)結(jié)構(gòu)的運(yùn)算得以實(shí)現(xiàn)。此外,它還能對內(nèi)存的物理地址進(jìn)行直接地訪問,開展基于bit位的操作。因?yàn),C語言使對硬件的編程操作得以實(shí)現(xiàn),所以它同時具備著低級語言與高級語言的功能。與其它的一些高級語言相比,C語言程序的編寫更為簡潔,有著更加靈活的書寫形式,更便于使用,運(yùn)算符的應(yīng)用靈活和表達(dá)式類型多樣化,使C語言能夠?qū)崿F(xiàn)許多在其它語言之后較難實(shí)現(xiàn)的復(fù)雜運(yùn)算,其不僅在系統(tǒng)軟件的開發(fā)中十分適用,在應(yīng)用軟件的開發(fā)上也非常適合。為了編寫出簡潔、可靠、高效的C語言代碼,在C語言的編程過程中,既要對C語言的基本知識做到理解,還應(yīng)盡可能地掌握更多的編程經(jīng)驗(yàn),能夠?qū)ΤR姷膯栴}進(jìn)行處理。

          1程序輸入時的問題

         。1)沒有仔細(xì)對英文字母的大小寫進(jìn)行區(qū)別。大寫字母與小寫字母在C語言的編譯系統(tǒng)之中,是兩種完全不同的字符。為了增加可讀性,以示區(qū)別,在習(xí)慣上應(yīng)養(yǎng)成變量名用小寫,而符號常量名用大寫。

         。2)未重視中英文輸入狀態(tài)。

         。3)未能熟練掌握運(yùn)算符。尤其是等于關(guān)系運(yùn)算符“==”算是C語言編程過程中最易犯,且結(jié)果最為嚴(yán)重的問題!==”在C語言之中為等于關(guān)系運(yùn)算符,而“=”則是賦值語句。然而,“=”在其它的一些計(jì)算機(jī)語言之中則是關(guān)系運(yùn)算符,因此,將分支結(jié)構(gòu)語句之中“==”錯寫成“=”的情況時有發(fā)生,而這種錯誤較難被發(fā)現(xiàn),其結(jié)果常常就是造成程序的崩潰。解決這類問題一個較為有效的方式是,在“等于”關(guān)系運(yùn)算符是變量與常量比較的時,一定要記得將常量寫在左邊,在腦海中形成一個自然反應(yīng),例如要寫if(a==1),即if(1==a)。而在“等于”關(guān)系運(yùn)算符全是變量比較時,寫成“!=”“不等于”關(guān)系運(yùn)算符,則是最好反應(yīng),如此能夠使這種問題發(fā)生的幾率得到明顯減少。

          2緩沖區(qū)溢出問題

          緩沖區(qū)是內(nèi)存的連續(xù)塊,是用于給定類型的數(shù)據(jù)存放。如內(nèi)存的拷貝函數(shù)這類C語言的基本函數(shù),字符串的.拷貝函數(shù)其自身不具備較高的安全性,這些標(biāo)準(zhǔn)函數(shù)不對目的內(nèi)容及原內(nèi)容的長度進(jìn)行判定,在目的內(nèi)容長度小于原內(nèi)容長度之時,字符串過長造成將相鄰存儲單元覆蓋的情況,就可能會發(fā)生,從而致使程序運(yùn)行出現(xiàn)錯誤,造成程序崩潰。針對此種情況,為了保證對數(shù)組在正確的范圍內(nèi)操作,可在編寫的代碼之中對全部對數(shù)組的讀、寫操作進(jìn)行檢查,但如此會在很大程度上影響到程序的性能。例如,時常會用錯strcpy函數(shù),從而帶來緩沖區(qū)溢出的風(fēng)險。因此,確保目標(biāo)源容納數(shù)據(jù)的空間充足,是執(zhí)行strcpy函數(shù)前的必要步驟,不能忽視。此外,還有一個降低緩沖區(qū)溢出問題的辦法,那就是限制源數(shù)據(jù)的存儲空間,如此還能提高應(yīng)用程序的效率。當(dāng)然,strncpy函數(shù)是這個函數(shù)相對應(yīng)的安全函數(shù)。但人們對這個函數(shù)的count值計(jì)算來源是它的常見錯誤,許多人會把目標(biāo)緩沖區(qū)的字節(jié)總數(shù)作為count值,然而實(shí)際上作為count值的應(yīng)該是留在緩沖區(qū)的字符數(shù)目。

          3指針的用法

          指針是C語言的重要特色與精髓,是重要的數(shù)據(jù)類型。在C語言編程的過程中,使用指針能夠合理、有效地節(jié)省存儲空間,加快程序運(yùn)行過程中的速度。指針有著許多種類,如字符指針變量、整數(shù)數(shù)組指針、整數(shù)指針變量、指向整數(shù)指針的指針以及整數(shù)指針數(shù)組等等。對于眾多初學(xué)者而言,可能還未看完便失去信心了,且掌握難度較高。通常,在程序運(yùn)行以后指針運(yùn)用不當(dāng)所導(dǎo)致的錯誤才會顯現(xiàn)出來,錯誤的隱蔽性較強(qiáng)。常見的幾個錯誤如下:

          3.1“野指針”

          在C程序之中對一個指針變量進(jìn)行了定義,卻未將其初始化。若在之后操作此指針變量所指的存儲空間,將會導(dǎo)致程序出現(xiàn)十分嚴(yán)重的錯誤。因?yàn),在將指針變量定義之后,指針會隨機(jī)地指向某個內(nèi)存地址,這時候的指針?biāo)傅膬?nèi)存會將該單元之中原本就存在的數(shù)據(jù)覆蓋掉,直接賦值操作,導(dǎo)致該數(shù)據(jù)丟失。如果指針?biāo)赶虻氖窍到y(tǒng)數(shù)據(jù)區(qū),將會極大地影響系統(tǒng)運(yùn)行,甚至是發(fā)生死機(jī)。對此,為了指針指向能夠正確,在C語言編程的過程中,要第一時間將指針變量賦值。

          3.2棧溢出

          當(dāng)對一個子程序(子函數(shù))進(jìn)行調(diào)用時,用來現(xiàn)場的保存與恢復(fù)以及進(jìn)行參數(shù)傳遞與局部變量的存放,即為棧的作用。而若在執(zhí)行子函數(shù)的時候,錯誤地使用了其中的局部變量指針,就會出現(xiàn)棧溢出。

          4嵌套循環(huán)的問題

          循環(huán)語句能夠節(jié)省許多代碼,讓程序代碼看起來不再那么復(fù)雜,變得十分簡單,是一個十分好的結(jié)構(gòu)。然而嵌套循環(huán)則更為的精妙非常,可以解決許多的問題,但由于外循環(huán)與內(nèi)循環(huán)有著不一樣的退出條件,如果缺乏全面的考慮,當(dāng)某種異常情況發(fā)生時,就較易出現(xiàn)死循環(huán)的問題,進(jìn)而發(fā)生不可挽回的后果。因此,若一個程序?qū)煽啃杂兄浅8叩囊,對于嵌套循環(huán)的使用就應(yīng)盡量減少,就算有著足夠把握的嵌套循環(huán)也是如此,不建議使用過多,應(yīng)盡可能將其寫成幾個單獨(dú)的循環(huán)。

          5結(jié)語

          總之,C語言功能豐富,有著使用靈活、方便、表達(dá)能力強(qiáng)等優(yōu)點(diǎn),是當(dāng)前應(yīng)用最廣泛的計(jì)算機(jī)語言之一,對編程人員而言熟練掌握這種程序設(shè)計(jì)工具十分必要。要想編寫出優(yōu)良的程序,就需對C語言的理論基礎(chǔ)熟練理解,再加上在編程過程中地不斷總結(jié),持續(xù)地積累經(jīng)驗(yàn),做到應(yīng)用自如提升編程的效率。希望本文之中所提出的這些問題,能夠?yàn)槠渌某鯇W(xué)者提供一定的參考。

          參考文獻(xiàn)

          [1]楊微微.計(jì)算機(jī)C語言程序的編輯分析[J].電腦知識與技術(shù):學(xué)術(shù)交流,2016,12(10):106-108.

          [2]沈繼濤.計(jì)算機(jī)C語言編輯程序技巧論述[J].電子技術(shù)與軟件工程,2016(16):254-254.

          [3]王桂華.芻議Linux系統(tǒng)下的計(jì)算機(jī)C語言編程技巧[J].黑龍江科技信息,2016(34):163-163.

        【計(jì)算機(jī)C語言編程問題分析論文】相關(guān)文章:

        1.C語言編程練習(xí)

        2.C語言編程題

        3.非計(jì)算機(jī)專業(yè)C語言教學(xué)模式分析論文

        4.計(jì)算機(jī)C語言的論文致謝

        5.計(jì)算機(jī)專業(yè)編程語言課程開設(shè)探索論文

        6.計(jì)算機(jī)程序c語言面試常見問題

        7.計(jì)算機(jī)C語言的論文致謝詞

        8.計(jì)算機(jī)編程語言英語術(shù)語

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码

        1. <tt id="5hhch"><source id="5hhch"></source></tt>
          1. <xmp id="5hhch"></xmp>

        2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

          <rp id="5hhch"></rp>
              <dfn id="5hhch"></dfn>