




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1第第1章章 C+基礎(chǔ)知識基礎(chǔ)知識 朱紅朱紅 2 C+語言發(fā)展歷史語言發(fā)展歷史 自從自從1946年第一臺電子數(shù)字計算機年第一臺電子數(shù)字計算機ENIAC問世以來,隨著計算機應(yīng)用領(lǐng)域的不斷擴大,問世以來,隨著計算機應(yīng)用領(lǐng)域的不斷擴大,促進了計算機技術(shù)的高速發(fā)展,尤其是近年促進了計算機技術(shù)的高速發(fā)展,尤其是近年來計算機的硬件和軟件都是日新月異。作為來計算機的硬件和軟件都是日新月異。作為應(yīng)用計算機的一種工具應(yīng)用計算機的一種工具程序設(shè)計語言,得程序設(shè)計語言,得到不斷的充實和完善。每年都有新的程序設(shè)到不斷的充實和完善。每年都有新的程序設(shè)計語言問世,老的程序設(shè)計語言不斷地更新計語言問世,老的程序設(shè)計語言不斷
2、地更新?lián)Q代。換代。 3二十世紀六十年代,二十世紀六十年代,Martin Richards為計算機軟件為計算機軟件人員在開發(fā)系統(tǒng)軟件時,作為記述語言使用而開發(fā)了人員在開發(fā)系統(tǒng)軟件時,作為記述語言使用而開發(fā)了BCPL語言語言(Basic Combined Programming Language)。1970年,年,Ken Thompson在繼承在繼承BCPL語言的許多優(yōu)點的語言的許多優(yōu)點的基礎(chǔ)上發(fā)明了實用的基礎(chǔ)上發(fā)明了實用的B語言。到了語言。到了1972年,貝爾實驗室的年,貝爾實驗室的Dennis Ritchie和和Brian kernighan在在B語言的基礎(chǔ)上語言的基礎(chǔ)上,作了作了進一步的充實
3、和完善,設(shè)計出了進一步的充實和完善,設(shè)計出了C語言。當(dāng)時,語言。當(dāng)時,設(shè)計設(shè)計C語語言是為了編寫言是為了編寫UNIX操作系統(tǒng)的。操作系統(tǒng)的。以后以后,C語言經(jīng)過多次改語言經(jīng)過多次改進進,并開始流行。并開始流行。C+是在是在C語言的基礎(chǔ)上發(fā)展和完善的,語言的基礎(chǔ)上發(fā)展和完善的,而而C是吸收了其它語言的優(yōu)點逐步成為實用性很強的語言是吸收了其它語言的優(yōu)點逐步成為實用性很強的語言。4C語言的主要特點是:語言的主要特點是:1、C語言是一種結(jié)構(gòu)化的程序設(shè)計語言,語言是一種結(jié)構(gòu)化的程序設(shè)計語言,語言本語言本身簡潔、使用靈活方便身簡潔、使用靈活方便。既適用于設(shè)計和編寫大。既適用于設(shè)計和編寫大的系統(tǒng)程序,又適用
4、于編寫小的控制程序,也適的系統(tǒng)程序,又適用于編寫小的控制程序,也適用科學(xué)計算。用科學(xué)計算。2、它既有高級語言的特點,又具有匯編語言的特它既有高級語言的特點,又具有匯編語言的特點。點。運算符豐富,除了提供對數(shù)據(jù)的算術(shù)邏輯運算運算符豐富,除了提供對數(shù)據(jù)的算術(shù)邏輯運算外,還提供了二進制的位運算。并且也提供了靈活外,還提供了二進制的位運算。并且也提供了靈活的數(shù)據(jù)結(jié)構(gòu)。用的數(shù)據(jù)結(jié)構(gòu)。用C語言編寫的程序表述靈活方便,語言編寫的程序表述靈活方便,功能強大。用功能強大。用C語言開發(fā)的程序,其結(jié)構(gòu)性好,目語言開發(fā)的程序,其結(jié)構(gòu)性好,目標(biāo)程序質(zhì)量高,程序執(zhí)行效率高。標(biāo)程序質(zhì)量高,程序執(zhí)行效率高。53、程序的可移植
5、性好程序的可移植性好。用。用C語言在某一種型號的計語言在某一種型號的計算機上開發(fā)的程序,基本上可以不作修改,而直接算機上開發(fā)的程序,基本上可以不作修改,而直接移植到其它型號和不同檔次的計算機上運行。移植到其它型號和不同檔次的計算機上運行。4、程序的語法結(jié)構(gòu)不夠嚴密,程序設(shè)計的自由度程序的語法結(jié)構(gòu)不夠嚴密,程序設(shè)計的自由度大大。這對于比較精通。這對于比較精通C語言的程序設(shè)計者來說,可語言的程序設(shè)計者來說,可以設(shè)計出高質(zhì)量的非常通用的程序。但對于初學(xué)者以設(shè)計出高質(zhì)量的非常通用的程序。但對于初學(xué)者來說,要能比較熟練運用來說,要能比較熟練運用C語言來編寫程序,并不語言來編寫程序,并不是一件容易的事情。
6、與其它高級語言相比而言,調(diào)是一件容易的事情。與其它高級語言相比而言,調(diào)試程序比較困難。往往是編好程序輸入計算機后,試程序比較困難。往往是編好程序輸入計算機后,編譯時容易通過,而在執(zhí)行時還會出錯。但只要對編譯時容易通過,而在執(zhí)行時還會出錯。但只要對C語言的語法規(guī)則真正領(lǐng)會,編寫程序及調(diào)試程序語言的語法規(guī)則真正領(lǐng)會,編寫程序及調(diào)試程序還是比較容易掌握的。還是比較容易掌握的。6隨著隨著C語言應(yīng)用的推廣,語言應(yīng)用的推廣,C語言存在的一語言存在的一些缺陷或不足也開始流露出來,并受到大些缺陷或不足也開始流露出來,并受到大家的關(guān)注。如:家的關(guān)注。如:C語言對數(shù)據(jù)類型檢查的語言對數(shù)據(jù)類型檢查的機制比較弱;缺少
7、支持代碼重用的結(jié)構(gòu);機制比較弱;缺少支持代碼重用的結(jié)構(gòu);隨著軟件工程規(guī)模的擴大,難以適應(yīng)開發(fā)隨著軟件工程規(guī)模的擴大,難以適應(yīng)開發(fā)特大型的程序等等。特大型的程序等等。7為了克服為了克服C語言本身存在的缺點,并保持語言本身存在的缺點,并保持C語言簡語言簡潔、高效,與匯編語言接近的特點,潔、高效,與匯編語言接近的特點,1980年,貝年,貝爾實驗室的爾實驗室的Bjarne Stroustrup博士及其同事對博士及其同事對C語語言進行了改進和擴充,并把言進行了改進和擴充,并把Simula 67中類的概念中類的概念引入到引入到C中。并在中。并在1983年由年由Rick Maseitti提議正式提議正式命名
8、為命名為C+(C Plus Plus)。后來,)。后來,又把運算符的又把運算符的重載、引用、虛函數(shù)等功能加入到重載、引用、虛函數(shù)等功能加入到C+中,使中,使C+的功能日趨完善。的功能日趨完善。當(dāng)前用得較為廣泛的當(dāng)前用得較為廣泛的C+有:有:VC+ (Visual C Plus Plus)、)、 BC+(Borland C Plus Plus)、)、AT&T C+等。等。8簡單的簡單的C+程序介紹程序介紹高級語言編譯過程高級語言編譯過程源程序源程序(文本文件)(文本文件)*.CPP目標(biāo)文件目標(biāo)文件(二進制文件)(二進制文件)*.OBJ可執(zhí)行文件可執(zhí)行文件(二進制文件)(二進制文件)*.EXE庫文
9、件庫文件(各種函數(shù))(各種函數(shù))在在Vitual C+系統(tǒng)中,可直接從源程序編譯連接至可執(zhí)行系統(tǒng)中,可直接從源程序編譯連接至可執(zhí)行程序,但依然要生成程序,但依然要生成*.OBJ及及*.EXE這兩個文件。這兩個文件。F7編譯編譯連接連接compilelink9一個簡單的一個簡單的C+程序程序#includevoid main(void ) cout“I am a student.n”; /輸出字符串輸出字符串主函數(shù)主函數(shù)函數(shù)體函數(shù)體開始開始函數(shù)體函數(shù)體結(jié)束結(jié)束輸出流,在屏幕上打輸出流,在屏幕上打印引號內(nèi)的字符串印引號內(nèi)的字符串分號,一條完整分號,一條完整語句的結(jié)束符語句的結(jié)束符本程序編譯執(zhí)行后,
10、在本程序編譯執(zhí)行后,在DOS屏幕上打印出屏幕上打印出 I am a student.包含文件包含文件注釋或說明注釋或說明10編譯過程:編譯過程:1)啟動)啟動Visual C+,選擇選擇“文件文件”菜單中的菜單中的“新建新建”命令,選擇命令,選擇“文件文件”標(biāo)簽中的標(biāo)簽中的“C+ Source File”選項。選項。2)選擇源程序存放的目錄和輸入源程序名,單擊)選擇源程序存放的目錄和輸入源程序名,單擊“確定確定”。3)在編輯器中編寫源程序。)在編輯器中編寫源程序。4)單擊)單擊F7或或“編譯編譯”中的中的“重建全部重建全部”編譯源程編譯源程序,若編譯通過,單擊序,若編譯通過,單擊“執(zhí)行執(zhí)行”,
11、在,在DOS屏上看屏上看結(jié)果,任按一鍵返回編輯器。結(jié)果,任按一鍵返回編輯器。11啟動啟動VC+編譯系統(tǒng)編譯系統(tǒng)12VC+編譯編譯系統(tǒng)界面系統(tǒng)界面單擊單擊“File”菜單菜單中中“New”命令命令13選擇選擇“Files”選項卡選項卡選擇選擇C+源源文件命令文件命令輸入文件名輸入文件名輸入文件輸入文件存放位置存放位置單擊選擇單擊選擇驅(qū)動器驅(qū)動器選擇驅(qū)動選擇驅(qū)動器或目錄器或目錄14C+源文件源文件編輯界面編輯界面輸入輸入C+源代碼源代碼15可以將此源可以將此源代碼另起文代碼另起文件名存盤件名存盤16選擇編譯命令,將源文選擇編譯命令,將源文件件.cpp生成生成.obj文件文件17如果編譯出錯,會出現(xiàn)提示信息,如果編譯出錯,會出現(xiàn)提示信息,指出錯誤的位置及種類指出錯誤的位置及種類錯誤所在行錯誤所在行錯誤的原因錯誤的原因18雙擊錯誤雙擊錯誤所在行所在行光標(biāo)移到該行光標(biāo)移到該行19生成可執(zhí)生成可執(zhí)行文件行文件通過后單通過后單擊該命令擊該命令運行程序運行程序20運行結(jié)果顯示運行結(jié)果顯示在在DOS屏上屏上注意:盡量不要在優(yōu)盤上注意:盡量不要在優(yōu)盤上運行程
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司貸款走賬合同范本
- 醫(yī)療ppp項目合同范本
- 供水用電合同范本
- 出納會計聘請合同范本
- 臨時工簽合同范本
- 公寓用品租賃合同范本
- 人工突觸芯片研發(fā)合作合同
- 人防固定車位出租合同范本
- 中標(biāo)總價合同范例
- 廠房照明采購合同范本
- 2024轉(zhuǎn)向節(jié)設(shè)計標(biāo)準(zhǔn)
- 一年級《讀讀兒歌和童謠》線上閱讀測試專項測試題附答案
- 強化學(xué)習(xí)在支付風(fēng)控
- 工商企業(yè)管理畢業(yè)論文范文(4篇)
- 重癥醫(yī)學(xué)科相關(guān)技術(shù)規(guī)范與操作規(guī)程
- DB11∕T 1326-2016 中小學(xué)校晨午檢規(guī)范
- 北師大版(三起)(2024)三年級上冊英語Unit 2 School life單元測試卷(含答案)
- 兩癌篩查宣傳課件
- 《跨境直播運營》課件-跨境直播的概念和發(fā)展歷程
- 施工現(xiàn)場安全隱患檢查表
- DLT5461-2013 火力發(fā)電廠施工圖設(shè)計文件深度規(guī)定(第1-16部分)
評論
0/150
提交評論