• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      淺析C++與C語言的幾點聯(lián)系與區(qū)別

      2009-05-29 04:32:18陳海蕊郝世選
      網(wǎng)絡(luò)與信息 2009年5期
      關(guān)鍵詞:關(guān)鍵字面向?qū)ο?/a>程序設(shè)計

      陳海蕊 郝世選

      摘要:文中從主函數(shù)、類與結(jié)構(gòu)、模板與宏三方面闡述了C/C++之間的聯(lián)系。從編程思想。關(guān)鍵宇和語法格式三方面論述了二者的區(qū)別。最后給出培養(yǎng)學生編程思路這一教學原則。

      關(guān)鍵詞:c/c++;程序設(shè)計;編程思想

      1引言

      “c語言程序設(shè)計”課程是高校計算機及相關(guān)專業(yè)的傳統(tǒng)課程,近年來該課程卻逐漸向“C/C++程序設(shè)計”過渡,更有甚者干脆摒棄C語言課程直接開設(shè)C++課程,這一現(xiàn)象值得我們反思,究竟如何在C與C++之間取舍,二者有何聯(lián)系與區(qū)別?下面分別從三方面進行闡述。

      2聯(lián)系

      C++是以G語言為基礎(chǔ)增加新內(nèi)容發(fā)展而來,是C語言的推廣和延伸。絕大部分C語言中正確的語句在C十十中也可以使用,C語言是C++的子集。

      2.1 main函數(shù)

      c++與c語言中都有main函數(shù),main函數(shù)在兩種語言中都起著不可或缺的作用,擔當重要作用即程序的入口。簡單的不帶類的c++程序中的主函數(shù)除了輸入輸出(Gout/cin)與G語言不同。別的二者非常類似。

      2.2類與結(jié)構(gòu)

      類是面向?qū)ο蟪绦蛟O(shè)計中最基本的概念,是實現(xiàn)面向?qū)ο蟪绦蛟O(shè)計的基礎(chǔ)與核心。類是將不同類型的數(shù)據(jù)和與數(shù)據(jù)相關(guān)的操作封裝在一起的集合體,是對要處理問題的抽象描述。定義了抽象類之后可利用該類定義其實體即該類的對象。結(jié)構(gòu)是c語言中很有用的一種數(shù)據(jù)類型,是以后學習c++中“類”的基礎(chǔ)。結(jié)構(gòu)體成員組合在一起形成一個整體,其成員可為不同的類型。定義結(jié)構(gòu)體之后可用該結(jié)構(gòu)體類型定義結(jié)構(gòu)體變量。c中的結(jié)構(gòu)可以說是c++中類的雛形,但其區(qū)別也是顯而易見的,結(jié)構(gòu)中只是有數(shù)據(jù)成員沒有成員函數(shù);結(jié)構(gòu)中也沒有public和private關(guān)鍵字,其中的數(shù)據(jù)成員默認都是公有的,一般函數(shù)都可以訪問,而C++的類中的數(shù)據(jù)成員默認情況下都是私有的,只有類對象中的成員函數(shù)和友元函數(shù)能夠訪問,這樣極大地提高了數(shù)據(jù)的安全性。

      2.3模板與宏

      模板是c++程序設(shè)計中的重要機制,可以節(jié)約程序代碼,提高面向?qū)ο蟪绦蛟O(shè)計的可重用性和可維護性。模板把函數(shù)或類要處理的數(shù)據(jù)類型參數(shù)化,表現(xiàn)為參數(shù)的多態(tài)性,從而有效實現(xiàn)了程序設(shè)計中的代碼重用。c語言中的宏定義是一種預(yù)處理方式??筛倪M程序設(shè)計環(huán)境,提高編程效率。其中帶參數(shù)的宏定義方式不只是簡單的字符串替換,還要進行參數(shù)替換,為日后學習面向?qū)ο蟪绦蛟O(shè)計中的函數(shù)模板奠定基礎(chǔ)。

      3區(qū)別

      C是一種結(jié)構(gòu)化語言,其重點在于算法和數(shù)據(jù)結(jié)構(gòu)。C程序設(shè)計首要考慮如何通過一個過程,對輸入或環(huán)境條件進行運算處理得到輸出或?qū)崿F(xiàn)過程控制,而c++首要考慮如何構(gòu)造一個對象模型,讓這個模型能契合與之對應(yīng)的問題域,這樣就可通過獲取對象的狀態(tài)信息得到輸出或?qū)崿F(xiàn)過程控制。

      3.1編程思想

      c++與C語言最大的區(qū)別在于編程思想的截然不同,前者是面向?qū)ο蟮木幊陶Z言,后者則是面向過程的結(jié)構(gòu)化的編程語言。面向?qū)ο蟪绦蛘Z言將程序設(shè)計領(lǐng)域與日常生活拉得更近,面向過程的C語言強調(diào)程序的功能,以函數(shù)為中心,c++在C語言這一強大巨人的肩膀上發(fā)展,通過C語言強大的軟硬件控制功能,融入面向?qū)ο蟮木幊趟枷?。強調(diào)程序的分層。分類,以抽象的類為基礎(chǔ),進行對象的定義與展示,使應(yīng)用程序具有封裝性、繼承性和多態(tài)性。

      3.2關(guān)鍵字

      c語言中的關(guān)鍵字幾乎都可以在C++中使用,但c++中增加了一些C語言中所不支持的關(guān)鍵字,這些關(guān)鍵字能夠作為函數(shù)和變量的標識符在c程序中使用,盡管C++包含了所有的c,很顯然沒有任何e++編譯器能夠編譯這樣的c程序。例如c++中的new和delete取代了C中的malloc和free,C++中還增加了public、private、try catch。throw等很多關(guān)鍵字。

      3.3語法格式

      c++和c語言在語法格式上也有很大的不同。c程序員可以省略函數(shù)的返回類型,C++卻不可以,即使無返回也應(yīng)加上void類型。注釋的格式:c語言只支持**。C++還支持//在C語言中輸入輸出是使用scanf和printf函數(shù)來實現(xiàn)的,而e++是使用類來實現(xiàn)的,C++中用于控制1/O的iostream類庫替代了C語言中的stdio函數(shù)庫。C++中的try/oatch/thrOw異常處理機制取代了C中的setjmp和Iongjmp函數(shù)。C++中的引用簡化了c語言中過于繁雜的指針。

      4結(jié)語

      C++雖然是由C語言發(fā)展而來的。二者在程序設(shè)計上卻有著本質(zhì)的不同。c的輕便靈活與C++的詳盡完善形成了鮮明的對比。在計算機專業(yè)的C/C++課程設(shè)計中,究竟開設(shè)c語言好還是c++更好呢?筆者認為兩門課程都很重要,面向過程的和面向?qū)ο蟮膬煞N思想都應(yīng)該引導學生學習,若受課時所限老師不必面面偎到,但應(yīng)引領(lǐng)學生掌握C/c+十中的核心內(nèi)容。至于教學方法筆者認為應(yīng)把握一個原則即不能一味講解語法,應(yīng)教會學生思考程序的設(shè)計方法,類似的問題學會舉一反三,培養(yǎng)自己的編程思路。畢竟授之以魚不如授之以漁。

      猜你喜歡
      關(guān)鍵字面向?qū)ο?/a>程序設(shè)計
      履職盡責求實效 真抓實干勇作為——十個關(guān)鍵字,盤點江蘇統(tǒng)戰(zhàn)的2021
      華人時刊(2022年1期)2022-04-26 13:39:28
      基于Visual Studio Code的C語言程序設(shè)計實踐教學探索
      計算機教育(2020年5期)2020-07-24 08:52:56
      成功避開“關(guān)鍵字”
      從細節(jié)入手,談PLC程序設(shè)計技巧
      電子制作(2019年9期)2019-05-30 09:42:04
      面向?qū)ο蟮挠嬎銠C網(wǎng)絡(luò)設(shè)計軟件系統(tǒng)的開發(fā)
      電子測試(2018年15期)2018-09-26 06:01:34
      面向?qū)ο蟮臄?shù)據(jù)交換協(xié)議研究與應(yīng)用
      高職高專院校C語言程序設(shè)計教學改革探索
      面向?qū)ο骔eb開發(fā)編程語言的的評估方法
      PLC梯形圖程序設(shè)計技巧及應(yīng)用
      面向?qū)ο笮畔⑻崛≈杏跋穹指顓?shù)的選擇
      河南科技(2014年10期)2014-02-27 14:09:03
      雷山县| 武强县| 通化市| 民乐县| 台北市| 葵青区| 福州市| 丹棱县| 杂多县| 林西县| 济南市| 舟山市| 合水县| 托里县| 调兵山市| 漯河市| 开原市| 闽清县| 土默特左旗| 苍山县| 枣强县| 饶阳县| 仲巴县| 汉中市| 东光县| 集安市| 洪泽县| 东阳市| 城固县| 越西县| 贵港市| 盐城市| 榆林市| 阿巴嘎旗| 孙吴县| 邯郸市| 澜沧| 光泽县| 景洪市| 磐安县| 西平县|