(程序設計語言和開發環境)課件_第1頁
(程序設計語言和開發環境)課件_第2頁
(程序設計語言和開發環境)課件_第3頁
(程序設計語言和開發環境)課件_第4頁
(程序設計語言和開發環境)課件_第5頁
已閱讀5頁,還剩99頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

ProgrammingLanguagesandDevelopmentEnvironment

(程序設計語言和開發環境)/~course/cs101/2008

HongfeiYanSchoolofEECS,PekingUniversity10/8/2008ProgrammingLanguagesandDeve2OutlineProgramminglanguagesDevelopmentenvironment2OutlineProgramminglanguages3EvolutionEvolutionofcomputerlanguages3EvolutionEvolutionofcompute4計算機語言的演化機器語言指令由0和1串組成,程序可直接執行符號語言用符號表示不同的機器語言指令,必須被匯編(assembler)為機器語言高級語言從關注計算機轉移到關注問題本身.用語句(statement)構造應用邏輯.通常不能直接執行,要編譯(compile)或解釋(interpret)執行.4計算機語言的演化機器語言5ComputerlanguageThetermcomputerlanguageincludesalargevarietyofartificiallanguagesusedtocommunicatewithcomputers.Itisbroaderthanthemorecommonly-usedtermprogramminglanguage.Programminglanguagesareasubsetofcomputerlanguages.Forexample,HTMLisamarkuplanguageandacomputerlanguage,butitisnottraditionallyconsideredaprogramminglanguage.Machinecodeisacomputerlanguage.Itcantechnicallybeusedforprogramming,andhasbeen(e.g.theoriginalbootstrapperforAltairBASIC),thoughmostwouldnotconsideritaprogramminglanguage.5ComputerlanguageThetermcom6TypesofComputerLanguagesProgramminglanguagesaretheprimarymeansbywhichdevelopersofcomputingsystemsinstructamachinetoorganizeormanipulateinformationorcontrolphysicaldevices.Mostsoftwareiswrittenusingoneormoreprogramminglanguages.CommonexamplesincludeC,C++,Java,BASIC,assemblylanguages,andmanyothers.Scriptinglanguagesaredesignedtocontrolothersoftwareortocoordinatetheactionsofmultiplesoftwareapplications.Machinecodeanonhuman-readablebinarycomputerlanguagewhichcorrespondstotheavailableinstructionsforamicroprocessor.……6TypesofComputerLanguagesPr7Whatproblemgavebirthtoprogramminglanguages?Beforehighlevelprogramminglanguagesexisted,computerswereprogrammedoneinstructionatatimeusingbinaryorhex.atediousjobandalotoferrors.Obviously,thisjobdidnotattractmanypeople,sotherewasashortageofprogrammers.Expensivecomputerssatidleforlongperiodsoftimewhilesoftwarewasbeingdeveloped.Softwareoftencosttwotofourtimesasmuchasthecomputer.Thisledtothedevelopmentofassemblersandassemblylanguages.Programmingbecamesomewhateasier,butmanyusersstillwantedfloatingpointnumbersandarrayindexing.Sincethesecapabilitieswerenotsupportedinhardware,highlevellanguageshadtobedevelopedtosupportthem.7Whatproblemgavebirthtopr8WhatMakesaLanguageHot?EaseofuseLanguageFeaturesPerformanceCorporateSupportExperiencedProgrammersLegacyCode8WhatMakesaLanguageHot?Eas9910Evolutionofprogramminglanguages10Evolutionofprogramminglan11PASCALPascal語言是由著名瑞士計算機科學家N.Wirth(1984年圖靈獎得主)設計的一種語言,1968年提出后被全世界廣泛接受,成為一種對計算機科學技術發展有巨大影響的語言。這個語言的名字是為了紀念歷史上著名的數學家和計算學科的先驅BlaisePascal(帕斯卡)。Pascal語言把許多好的東西結合在一個很簡練的語言里,被計算機教育界廣泛采用。從七十年代末往后的很長一段時間里,Pascal成為世界范圍的計算機專業教學語言。11PASCALPascal語言是由著名瑞士計算機科學家12NiklausWirthIn1984hewontheTuringAwardfor developingasequenceofinnovativecomputerlanguages.Euler,AlgolW,Pascal,Modula,Modula-2andOberon.HisarticleProgramDevelopmentbyStepwiseRefinement,abouttheteachingofprogramming,isconsideredtobeaclassictextinsoftwareengineering.In1975hewrotethebookAlgorithms+DataStructures=Programs,whichgainedwiderecognitionandisstillusefultoday.12NiklausWirthIn1984hewon13ADAAda生活在十九世紀中葉,是著名詩人拜倫的女兒設計了巴貝奇分析機上解伯努利方程的一個程序,并證明當時的19世紀計算機狂人巴貝奇的分析器可以用于許多問題的求解。她甚至還建立了循環和子程序的概念。由于她在程序設計上的開創性工作,被稱為世界上第一位程序員。Ada語言開發的目的是作為新一代的美國軍用程序設計語言(1983-1995),作為所有與國防有關的程序和軟件的統一語言標準。Ada語言自1983年作為標準提出后,雖由美國國防部大力推行,也受到各國軍方的重視,但不像預想的那樣成功,其中一個原因是它太復雜。

13ADAAda生活在十九世紀中葉,是著名詩人拜倫的女兒14CCprogramminglanguagewasdevisedbyBellLabsofAT&TasasystemimplementationlanguageforthenascentUnixoperatingsystem.Contribution:EfficiencyCastingFlexiblearrayLibraryGoodportabilityKenThompson(left)withDennisRitchie(right)14CCprogramminglanguageKen15C語言C是由美國貝爾實驗室的DennisRitchie在1972年設計開發的,開發目的是想成為一種編制“系統程序”的工具語言。Retchie等人首先用自己發明的C語言編寫了Unix操作系統。以后C語言逐步發展成為開發系統軟件的主要語言。C語言已成為最重要的軟件系統開發語言,由此可見C語言在計算機領域地位之重要。15C語言C是由美國貝爾實驗室的DennisRitch16SIMULAAlthoughneverwidelyused,SIMULAishistoricallyimportant.Developedfrom1964-67,SIMULAwasdesignedasalanguagetoaidincreatingsimulations.SIMULAIwasintroducedin1964,itssolepurposewassystemsimulation.ImmediatelyafterSIMULAIwasfinished,thedesignersdecidedtoworkonanewlanguagewhichwouldcontainmanymorefeaturessothatitcouldbeusedformoregeneralpurposeareas.TheresultwasSIMLUA67.Tohelpmakesimulationeasier,SIMULA67introducedtheconceptofclasses,includinginstancingandcoroutine.Thiswasthebeginningofdataabstraction.16SIMULAAlthoughneverwidely17C++C++wasdesignedtoprovideSimula'sfacilitiesforprogramorganizationtogetherwithC'sefficiencyandflexibilityforsystemsprogramming.Itwasintendedtodeliverthattorealprojects.Contribution:OnelinecommentInlinefunctionMultipleinheritanceOverloadingoperatorsandfunctions17C++C++wasdesignedtoprovi18C++語言C++是在C語言基礎上發展出的一種“面向 對象”語言。它是由BjarneStroustrup在美國 貝爾實驗室開發的(1979)。C++是C語言的一個擴充,修正了C的一些弱點和不足,使用起來更方便可靠;以支持“面向對象”(Object-Oriented,簡稱為OO)的程序設計方法為基本目標,提供了一套支持面向對象程序設計的機制,如“類”(class)、“對象”(object)等等。面向對象的方法被認為是開發復雜軟件系統的一種有效途徑,OO程序設計語言也已經被廣泛接受。C++是目前使用最廣泛的一種面向對象的程序設計語言。

18C++語言C++是在C語言基礎上發展出的一種“面向19我們這門課程主要介紹C++語言19我們這門課程主要介紹C++語言20NotationsProgramminglanguagesAnotationfordescribingalgorithms(算法,即步驟)anddatastructure(數據結構,即數據或者是信息)ProgramAsentenceofaprogramminglanguage20NotationsProgramminglanguag21OutlineProgramminglanguagesDevelopmentenvironment命令行開發環境集成開發環境21OutlineProgramminglanguages22ThecompilationsystemTheprogramsthatperformthefourphases(preprocessor,compiler,assembler,andlinker)areknowncollectivelyasthecompilationsystem.gcc–ohellohello.c22ThecompilationsystemThepr23Buildingaprogram23Buildingaprogram24Programexecution24Programexecution25TypicalC++DevelopmentEnvironmentEditProgrammerwritesprogram(andstoressourcecodeondisk)PreprocessPerformcertainmanipulationsbeforecompilationCompileCompilertranslatesC++programsintomachinelanguagesLinkLinkobjectcodewithmissingfunctionsanddataExecuteTransferexecutableimagetomemoryExecutetheprogramoneinstructionatatime25TypicalC++DevelopmentEnvi26GNU程序設計工具集獨立開發工具:編輯、編譯、調試等是單獨的工具,通常是命令行界面編輯工具:vi編譯工具:g++調試工具:gdb26GNU程序設計工具集獨立開發工具:編輯、編譯、調試等是單27程序調試通常情況下,可執行文件中不包含對源程序的引用信息,如變量名,函數名,行號等.g++提供了`-g`開關,將源程序的信息存放在目標文件和可執行文件的符號表中,允許調試器(debugger)gdb

跟蹤程序的執行當程序崩潰的時候,檢查程序崩潰前的狀態運行并調試$gdbprogram

27程序調試通常情況下,可執行文件中不包含對源程序的引用信28gdb常用命令28gdb常用命令29"Hello,world!"inC++1

//HelloWorld.cpp2

#include<iostream>3

usingnamespacestd;45intmain()6

{7cout<<"Hello,world!\n";8

//cin.get();910

return0;11

}$g++-g-WallHelloWorld.cpp-oHelloWorld29"Hello,world!"inC++1//30Referencescs101courseQ&AonSept.30,2008

/~course/cs101/2008/resource/cs101_course_QA_080930.doc

MSYStutorial

/~course/cs101/2008/resource/tutorial1.doc

Linuxcommandtutorial

/~course/cs101/2008/resource/linux_command_tutorial.pdf

30Referencescs101courseQ&Ao31CodeBlocks編程環境-基本概念Project(工程):編寫程序的工作是以Project為單位。在開始一個新程序時,要先建立一個Project,之后在程序編寫過程中所有與這個程序有關的文件都會包含在這個Project中。編制的程序可以有各種不同類型,編程環境為每種類型的程序準備了一個模版,用來生成程序的最初框架。在門課程里只介紹編寫Console

Application類型的程序。這類程序的特點是:程序運行中會打開一個類似于DOS操作系統的界面,所有鍵盤輸入都是通過DOS界面進行的,而所有輸出都是輸出到DOS窗口中。31CodeBlocks編程環境-基本概念Project32SourceFile(源程序)源程序是我們用高級程序設計語言書寫的程序。源程序必須經過編譯連接變成可執行程序(機器代碼)才能運行。我們主要用C++語言編寫源程序。32SourceFile(源程序)源程序是我們用高級程序設33Compile(編譯)把源程序變成機器目標代碼的過程稱為編譯。不同的高級語言有不同的編譯器。各種高級語言都會提供一些常用的功能模塊,我們自己編寫的程序里會調用這些功能模塊。編譯并連接是把源程序編譯如果沒有錯誤則連接,否則給出編譯錯誤信息。Link(連接)Build(編譯并連接)33Compile(編譯)把源程序變成機器目標代碼的過程稱為34Debug(調試)當程序出錯時,可用調試工具發現錯處的代碼,進行改正。所謂調試是指逐條執行或部分執行程序代碼,并在執行過程中查看變量的值。當發現變量的值并非如我們預期或程序的執行邏輯并非我們預期時,就發現了錯誤,可以進行有針對性的改正。34Debug(調試)當程序出錯時,可用調試工具發現錯處的代35Run(運行)啟動一個可執行程序使其開始執行稱為運行。35Run(運行)啟動一個可執行程序使其開始執行稱為運行。36CodeBlocks編程環境–基本功能創建新工程編輯源程序編譯/連接運行調試36CodeBlocks編程環境–基本功能創建新工程37CodeBlocks編程環境-創建新工程37CodeBlocks編程環境-創建新工程38CodeBlocks編程環境-創建新工程38CodeBlocks編程環境-創建新工程39CodeBlocks編程環境-創建新工程39CodeBlocks編程環境-創建新工程40CodeBlocks編程環境-創建新工程40CodeBlocks編程環境-創建新工程41CodeBlocks編程環境–編輯源程序41CodeBlocks編程環境–編輯源程序42CodeBlocks編程環境–編譯/連接42CodeBlocks編程環境–編譯/連接43CodeBlocks編程環境–運行43CodeBlocks編程環境–運行44CodeBlocks編程環境–調試,設斷點44CodeBlocks編程環境–調試,設斷點45CodeBlocks編程環境–調試,運行45CodeBlocks編程環境–調試,運行46CodeBlocks編程環境–調試,看變量46CodeBlocks編程環境–調試,看變量47CodeBlocks編程環境–調試,單步執行47CodeBlocks編程環境–調試,單步執行48程序示例P1000@POJ1//計算兩個整數a和b的和2

#include<iostream>3

usingnamespacestd;45intmain()6

{7

inta,b;89cin>>a>>b;10cout<<a+b<<endl;11

//cin.get();1213

return0;14

}48程序示例P1000@POJ1//計算兩個整數a和b49求10個數的平均值1#include<iostream>2

#include<iomanip>3

usingnamespacestd;45intmain()6

{7floatn[10]

,sum=0;8for

(int

i=0;

i<10;

i++)

{9cin>>n[i];10sum+=n[i];11

}12cout

<<

"Theaverageis"

<<fixed<<setprecision(2)

<<sum/10

<<endl;13

14return

0;15

}49求10個數的平均值1#include<iostre50 弗雷德先生想在路易斯安娜州買一塊地造房子。在調查中他了解到由于密西西比河的侵蝕,路易斯安娜州正在以每年50平方英里的速度變小。因為弗雷德先生希望在他的新房子里生活直至終老,所以他想知道他的房子是否會被侵蝕掉。 經過進一步研究,弗雷德發現將要被侵蝕的陸地呈半圓形。半圓是一個以(0,0)點為中心的圓的一半,半圓的直邊是X軸。X軸以下的部分在水中。在第一年的開始,圓的面積是0。 問題是如果給定一點的X,Y坐標(Y>=0),要求出在第幾年年末,這個點將被侵蝕。例如:給定X,Y坐標為(1.0,1.0),則輸出:第1年年末。x,yxy房地產問題50 弗雷德先生想在路易斯安娜州買一塊地造房子。在調查中他51房地產問題1#include<iostream>2

#include<math.h>3

usingnamespacestd;45intmain()6

{7

floatx,y;8

int

year;9cin>>x>>y;10

year=(int)ceil(3.1416*(x*x+y*y)/2/50);11cout

<<

"Becorradedafter"

<<year<<

"years.\n";12

13return

0;14

}x,yxy51房地產問題1#include<iostream>x演講完畢,謝謝觀看!演講完畢,謝謝觀看!ProgrammingLanguagesandDevelopmentEnvironment

(程序設計語言和開發環境)/~course/cs101/2008

HongfeiYanSchoolofEECS,PekingUniversity10/8/2008ProgrammingLanguagesandDeve54OutlineProgramminglanguagesDevelopmentenvironment2OutlineProgramminglanguages55EvolutionEvolutionofcomputerlanguages3EvolutionEvolutionofcompute56計算機語言的演化機器語言指令由0和1串組成,程序可直接執行符號語言用符號表示不同的機器語言指令,必須被匯編(assembler)為機器語言高級語言從關注計算機轉移到關注問題本身.用語句(statement)構造應用邏輯.通常不能直接執行,要編譯(compile)或解釋(interpret)執行.4計算機語言的演化機器語言57ComputerlanguageThetermcomputerlanguageincludesalargevarietyofartificiallanguagesusedtocommunicatewithcomputers.Itisbroaderthanthemorecommonly-usedtermprogramminglanguage.Programminglanguagesareasubsetofcomputerlanguages.Forexample,HTMLisamarkuplanguageandacomputerlanguage,butitisnottraditionallyconsideredaprogramminglanguage.Machinecodeisacomputerlanguage.Itcantechnicallybeusedforprogramming,andhasbeen(e.g.theoriginalbootstrapperforAltairBASIC),thoughmostwouldnotconsideritaprogramminglanguage.5ComputerlanguageThetermcom58TypesofComputerLanguagesProgramminglanguagesaretheprimarymeansbywhichdevelopersofcomputingsystemsinstructamachinetoorganizeormanipulateinformationorcontrolphysicaldevices.Mostsoftwareiswrittenusingoneormoreprogramminglanguages.CommonexamplesincludeC,C++,Java,BASIC,assemblylanguages,andmanyothers.Scriptinglanguagesaredesignedtocontrolothersoftwareortocoordinatetheactionsofmultiplesoftwareapplications.Machinecodeanonhuman-readablebinarycomputerlanguagewhichcorrespondstotheavailableinstructionsforamicroprocessor.……6TypesofComputerLanguagesPr59Whatproblemgavebirthtoprogramminglanguages?Beforehighlevelprogramminglanguagesexisted,computerswereprogrammedoneinstructionatatimeusingbinaryorhex.atediousjobandalotoferrors.Obviously,thisjobdidnotattractmanypeople,sotherewasashortageofprogrammers.Expensivecomputerssatidleforlongperiodsoftimewhilesoftwarewasbeingdeveloped.Softwareoftencosttwotofourtimesasmuchasthecomputer.Thisledtothedevelopmentofassemblersandassemblylanguages.Programmingbecamesomewhateasier,butmanyusersstillwantedfloatingpointnumbersandarrayindexing.Sincethesecapabilitieswerenotsupportedinhardware,highlevellanguageshadtobedevelopedtosupportthem.7Whatproblemgavebirthtopr60WhatMakesaLanguageHot?EaseofuseLanguageFeaturesPerformanceCorporateSupportExperiencedProgrammersLegacyCode8WhatMakesaLanguageHot?Eas61962Evolutionofprogramminglanguages10Evolutionofprogramminglan63PASCALPascal語言是由著名瑞士計算機科學家N.Wirth(1984年圖靈獎得主)設計的一種語言,1968年提出后被全世界廣泛接受,成為一種對計算機科學技術發展有巨大影響的語言。這個語言的名字是為了紀念歷史上著名的數學家和計算學科的先驅BlaisePascal(帕斯卡)。Pascal語言把許多好的東西結合在一個很簡練的語言里,被計算機教育界廣泛采用。從七十年代末往后的很長一段時間里,Pascal成為世界范圍的計算機專業教學語言。11PASCALPascal語言是由著名瑞士計算機科學家64NiklausWirthIn1984hewontheTuringAwardfor developingasequenceofinnovativecomputerlanguages.Euler,AlgolW,Pascal,Modula,Modula-2andOberon.HisarticleProgramDevelopmentbyStepwiseRefinement,abouttheteachingofprogramming,isconsideredtobeaclassictextinsoftwareengineering.In1975hewrotethebookAlgorithms+DataStructures=Programs,whichgainedwiderecognitionandisstillusefultoday.12NiklausWirthIn1984hewon65ADAAda生活在十九世紀中葉,是著名詩人拜倫的女兒設計了巴貝奇分析機上解伯努利方程的一個程序,并證明當時的19世紀計算機狂人巴貝奇的分析器可以用于許多問題的求解。她甚至還建立了循環和子程序的概念。由于她在程序設計上的開創性工作,被稱為世界上第一位程序員。Ada語言開發的目的是作為新一代的美國軍用程序設計語言(1983-1995),作為所有與國防有關的程序和軟件的統一語言標準。Ada語言自1983年作為標準提出后,雖由美國國防部大力推行,也受到各國軍方的重視,但不像預想的那樣成功,其中一個原因是它太復雜。

13ADAAda生活在十九世紀中葉,是著名詩人拜倫的女兒66CCprogramminglanguagewasdevisedbyBellLabsofAT&TasasystemimplementationlanguageforthenascentUnixoperatingsystem.Contribution:EfficiencyCastingFlexiblearrayLibraryGoodportabilityKenThompson(left)withDennisRitchie(right)14CCprogramminglanguageKen67C語言C是由美國貝爾實驗室的DennisRitchie在1972年設計開發的,開發目的是想成為一種編制“系統程序”的工具語言。Retchie等人首先用自己發明的C語言編寫了Unix操作系統。以后C語言逐步發展成為開發系統軟件的主要語言。C語言已成為最重要的軟件系統開發語言,由此可見C語言在計算機領域地位之重要。15C語言C是由美國貝爾實驗室的DennisRitch68SIMULAAlthoughneverwidelyused,SIMULAishistoricallyimportant.Developedfrom1964-67,SIMULAwasdesignedasalanguagetoaidincreatingsimulations.SIMULAIwasintroducedin1964,itssolepurposewassystemsimulation.ImmediatelyafterSIMULAIwasfinished,thedesignersdecidedtoworkonanewlanguagewhichwouldcontainmanymorefeaturessothatitcouldbeusedformoregeneralpurposeareas.TheresultwasSIMLUA67.Tohelpmakesimulationeasier,SIMULA67introducedtheconceptofclasses,includinginstancingandcoroutine.Thiswasthebeginningofdataabstraction.16SIMULAAlthoughneverwidely69C++C++wasdesignedtoprovideSimula'sfacilitiesforprogramorganizationtogetherwithC'sefficiencyandflexibilityforsystemsprogramming.Itwasintendedtodeliverthattorealprojects.Contribution:OnelinecommentInlinefunctionMultipleinheritanceOverloadingoperatorsandfunctions17C++C++wasdesignedtoprovi70C++語言C++是在C語言基礎上發展出的一種“面向 對象”語言。它是由BjarneStroustrup在美國 貝爾實驗室開發的(1979)。C++是C語言的一個擴充,修正了C的一些弱點和不足,使用起來更方便可靠;以支持“面向對象”(Object-Oriented,簡稱為OO)的程序設計方法為基本目標,提供了一套支持面向對象程序設計的機制,如“類”(class)、“對象”(object)等等。面向對象的方法被認為是開發復雜軟件系統的一種有效途徑,OO程序設計語言也已經被廣泛接受。C++是目前使用最廣泛的一種面向對象的程序設計語言。

18C++語言C++是在C語言基礎上發展出的一種“面向71我們這門課程主要介紹C++語言19我們這門課程主要介紹C++語言72NotationsProgramminglanguagesAnotationfordescribingalgorithms(算法,即步驟)anddatastructure(數據結構,即數據或者是信息)ProgramAsentenceofaprogramminglanguage20NotationsProgramminglanguag73OutlineProgramminglanguagesDevelopmentenvironment命令行開發環境集成開發環境21OutlineProgramminglanguages74ThecompilationsystemTheprogramsthatperformthefourphases(preprocessor,compiler,assembler,andlinker)areknowncollectivelyasthecompilationsystem.gcc–ohellohello.c22ThecompilationsystemThepr75Buildingaprogram23Buildingaprogram76Programexecution24Programexecution77TypicalC++DevelopmentEnvironmentEditProgrammerwritesprogram(andstoressourcecodeondisk)PreprocessPerformcertainmanipulationsbeforecompilationCompileCompilertranslatesC++programsintomachinelanguagesLinkLinkobjectcodewithmissingfunctionsanddataExecuteTransferexecutableimagetomemoryExecutetheprogramoneinstructionatatime25TypicalC++DevelopmentEnvi78GNU程序設計工具集獨立開發工具:編輯、編譯、調試等是單獨的工具,通常是命令行界面編輯工具:vi編譯工具:g++調試工具:gdb26GNU程序設計工具集獨立開發工具:編輯、編譯、調試等是單79程序調試通常情況下,可執行文件中不包含對源程序的引用信息,如變量名,函數名,行號等.g++提供了`-g`開關,將源程序的信息存放在目標文件和可執行文件的符號表中,允許調試器(debugger)gdb

跟蹤程序的執行當程序崩潰的時候,檢查程序崩潰前的狀態運行并調試$gdbprogram

27程序調試通常情況下,可執行文件中不包含對源程序的引用信80gdb常用命令28gdb常用命令81"Hello,world!"inC++1

//HelloWorld.cpp2

#include<iostream>3

usingnamespacestd;45intmain()6

{7cout<<"Hello,world!\n";8

//cin.get();910

return0;11

}$g++-g-WallHelloWorld.cpp-oHelloWorld29"Hello,world!"inC++1//82Referencescs101courseQ&AonSept.30,2008

/~course/cs101/2008/resource/cs101_course_QA_080930.doc

MSYStutorial

/~course/cs101/2008/resource/tutorial1.doc

Linuxcommandtutorial

/~course/cs101/2008/resource/linux_command_tutorial.pdf

30Referencescs101courseQ&Ao83CodeBlocks編程環境-基本概念Project(工程):編寫程序的工作是以Project為單位。在開始一個新程序時,要先建立一個Project,之后在程序編寫過程中所有與這個程序有關的文件都會包含在這個Project中。編制的程序可以有各種不同類型,編程環境為每種類型的程序準備了一個模版,用來生成程序的最初框架。在門課程里只介紹編寫Console

Application類型的程序。這類程序的特點是:程序運行中會打開一個類似于DOS操作系統的界面,所有鍵盤輸入都是通過DOS界面進行的,而所有輸出都是輸出到DOS窗口中。31CodeBlocks編程環境-基本概念Project84SourceFile(源程序)源程序是我們用高級程序設計語言書寫的程序。源程序必須經過編譯連接變成可執行程序(機器代碼)才能運行。我們主要用C++語言編寫源程序。32SourceFile(源程序)源程序是我們用高級程序設85Compile(編譯)把源程序變成機器目標代碼的過程稱為編譯。不同的高級語言有不同的編譯器。各種高級語言都會提供一些常用的功能模塊,我們自己編寫的程序里會調用這些功能模塊。編譯并連接是把源程序編譯如果沒有錯誤則連接,否則給出編譯錯誤信息。Link(連接)Build(編譯并連接)33Compile(編譯)把源程序變成機器目標代碼的過程稱為86Debug(調試)當程序出錯時,可用調試工具發現錯處的代碼,進行改正。所謂調試是指逐條執行或部分執行程序代碼,并在執行過程中查看變量的值。當發現變量的值并非如我們預期或程序的執行邏輯并非我們預期時,就發現了錯誤,可以進行有針對性的改正。34Debug(調試)當程序出錯時,可用調試工具發現錯處的代87Run(運行)啟動一個可執行程序使其開始執行稱為運行。35Run(運行)啟動一個可執行程序使其開始執行稱為運行。88CodeBlocks

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論