第1章c++概述海南大学三亚学院理工分院C++程序设计MicrosoftVisulFoxproTheC++ProgrammingDesign主讲:李春林TEL:13036072681电子信箱:JLHnLCL@SINA.COM.CN编著郑莉、董渊等计算机科学与技术专业清华大学出版社第1章c++概述海南大学三亚学院理工分院谁开发的C++语言?1程序和语言关系?5C++设计程序特点?6如何开发C++程序?开发环境【主要内容】[查看][查看][查看]2为什么要学C++语言程序设计?3C++程序设计主要学习内容?4如何学好语言课程?第1章c++概述海南大学三亚学院理工分院1.计算机组成?硬件软件第1章c++概述海南大学三亚学院理工分院算法是指为解决特定问题而采取的有限操作步骤。程序设计数据结构+算法+程序设计方法+开发环境程序是指计算机实现特定操作的指令的集合。程序=数据结构(属性、联系)+算法2.程序和语言?第1章c++概述海南大学三亚学院理工分院3.程序设计方法?结构化程序设计又称模块化,是把问题分解成若干个容易处理的子模块(功能),程序是处理数据的一系列过程,过程(函数)一组顺序执行的指令。这种设计方法数据和功能是分开的,其缺点:代码的重用低,耦合度高,难维护。面向对象程序设计数据和对数据的操作(处理)是一个整体即对象在分析设计阶段,与我们自然的思维方式一致。优点:重用性好,易维护第1章c++概述海南大学三亚学院理工分院C语言最初是美国贝尔实验室的戴尼斯·M·利奇(Dennis.M.Ritchie)在B语言基础上开发出来的。用来描述和实现unix系统。4.C++谁?C++是在1980年在C语言基础上由贝尔实验室的BjarneStroustrup博士,对c增加了面向对象部分,叫带类的c,83年正式命名c++。94年制定ansi标准,98年iso批准为国际标准.1950年生于丹麦1975年在奥尔胡斯大学毕业,1979年获得剑桥大学计算机科学博士学位。C++是建立C的基础,包括C的全部特征、属性和优点,同时添加了对面向对象编程的完全支持.第1章c++概述海南大学三亚学院理工分院5.为什么学C++?应用:delphi、c#、java、pascal、asp目前应用使用比较多的语言,c++又是最难学的。原因:软件开发应用角度看:面向系统软件、应用软件系统:OS、DBMS(FoxPro)、手机、系统工具。应用:商务、网络、信息管理、*通信、图形图象处理。从目前企业应用看:公司已开发的项目很多都是c++。从教学上看:数据结构、算法设计都用的c和c++。第1章c++概述海南大学三亚学院理工分院设计方法上看:支持面向对象从就业上看,c++程序员、软件工程师仍有较大的需求电子工程师北京实为亚太科技有限公司仪器仪表及工业自动化电子技术/半导体/集成电路职位描述负责工业自动化检测仪表硬件电子电路及软件研发。电子、仪器仪表、自动化、计算机、物理或相近专业本科以上毕业,三年以上工业自动化检测仪表电子电路软硬件研发设计工作经验,精通以单片机\微处理器为基础的硬件电路、模拟数字等电路、软件设计。具精深的单片机或其它微处理器为基础的汇编、C++、VB等微处理器软件研发能力。良好的英文能力。高素质、诚信敬业。本公司致力于创建国际水准精英团队,提供良好的职业发展空间,欢迎自动化领域精英加盟。第1章c++概述海南大学三亚学院理工分院DZS-707型多参数水质分析仪超声波测距仪第1章c++概述海南大学三亚学院理工分院C/C++软件工程师(ISMG)亚信科技(中国)有限公司公司行业:IT服务/多领域经营通讯(设备/运营/增值服务)计算机软件公司类型:外商独资公司规模:1000-9999人招聘人数:1人职位描述:从事Linux/Unix下C/C++短信网关系统研发。职位基本要求:----------------1、计算机、通信相关专业本科及以上学历;2、两年以上C/C++编程经验3、熟悉linux/Unix操作系统及shell编程4、熟悉TCP/IP协议及网络编程5、了解Oracle数据库的应用和开发,能使用基本的结构化查询语句6、良好的沟通能力和强烈的进取心,善于团队合作7、具有良好的英文读写能力,能独立阅读英文技术文档8、能承受工作压力和规范化的开发流程第1章c++概述海南大学三亚学院理工分院通信系统开发人员中援应急投资有限公司公司行业:贸易/进出口交通/运输/物流教育/培训其它公司类型:国企公司规模:20-99人职位描述/要求:计算机或通信专业本科毕业熟悉Linux和C/C++;了解语音/视频通信标准及各种协议有通信语音平台/视频系统软件开发经验3年以上工作经验手机蓝牙开发工程师通信应用开发高级工程师北京拓明通信技术有限责任公司第1章c++概述海南大学三亚学院理工分院招聘职位:嵌入式软件开发工作城市:广州职位描述:基于手机嵌入式平台(PalmOS/EPOC32,WinCE)的应用程序研发职位要求:本科以上学历,英语听说读写良好2年以上嵌入式软件开发经验熟练掌握嵌入式C++/Java语言开发,熟悉KVM满足如下所列2条以上优先考虑有M-Commerce(电子在线交易S/W,保安技术)研发经验,熟悉WLANSecurity,IPv6,MobileIP熟悉EmbeddedWebBrowser同步/异步终端Layer1,2,3技术,通信协议,WAPBrowser,HTMLBrowserXMLBrowserAudio(CodecControl)Display&VideoControl,AccousticControl&AudioSystemIntegrationDataProcessing/内存压缩技术经验手机在线Game研发经验有高度的责任感和良好的团队精神嵌入式软件开发北京波森人才顾问有限责任公司第1章c++概述海南大学三亚学院理工分院良好的编程能力。自觉的规范意识和团队精神。认识和运用数据库的能力。6.如何学好语言课程?培养兴趣(没兴趣,收效小,多看软件发展的人物)慎重选择设计语言(java,c++目前应用最多,要精通,触类旁通)脚踏实地,不要找捷径(想一下成高手很难,vc,vj++)玩悟结合,手脑勤(多动手实践发现细节问题)多参考程序代码(了解别人程序设计思想,有助于自己)注意提高英文阅读能力第1章c++概述海南大学三亚学院理工分院7.内容\特点?基本概念:类、对象、继承、多态、封装规则、格式:应用:如何使用;上机调试class类名{private:私有成员函数和数据成员的说明public:公有成员函数和数据成员的说明};各个成员函数的实现;//类外第1章c++概述海南大学三亚学院理工分院8.开发?步骤?(.OBJ)文件(.CPP.h)文件C++库文件(.EXE)文件间编辑工程文件执行编译器连接器存盘出错出错第1章c++概述海南大学三亚学院理工分院al.cppa2.cppa3.cppb1.hb2.h翻译单元1翻译单元2翻译单元3A1.obja2.obja3.obj.libC++的标准库函数标准类库.exe可执行文件编译(Compile)预处理链接(Link)#include#include第1章c++概述海南大学三亚学院理工分院9.程序结构/*ThisisasimpleCppprogram*/#includeiostream.h//文件包含命令voidmain()//主函数头{//主函数体doublex,y,z;//变量说明coutEntertwofloatnumber:;//输出数据cinxy;//输入数据z=x+y;//赋值coutx+y=zendl;//输出数据}第1章c++概述海南大学三亚学院理工分院求最大值的程序。•功能:调用MAX函数求两个数中值最大者,并调用标准函数Sqrt()求其平方根。源程序代码://**************************************//*Ch1_2.cpp*//**************************************#includeiostream.h#includemath.hdoublemax(doublex,doubley);voidmain(){doublea,b,c;coutinputtwonumbers:\n;cinab;c=max(a,b);countthesquartofmaximum=sqrt(c);}第1章c++概述海南大学三亚学院理工分院doublemax(doublex,doubley){doublez;if(xy)z=x;elsez=y;returnz;}C++源程序文件是一个文本文件,其扩展名是*.cpp,一个C++程序除了源程序文件外,还包含其它文件。第1章c++概述海南大学三亚学院理工分院预处理命令函数变量语句以两个“//”起头的任何文字。/**/#开头的是预处理行。如:Include命令。C++程序是由若干个文件组成,每个文件由若干函数组成;有且只有一个主函数构成。一对花括号“{}”是主函数的定界符。{}表示程序的层次范围。注释函数是由若干条语句组成的。如:表达式语句:1+3;a*d-4;赋值语句:a=2-4;c=a+b;空语句:;复合语句:{2+4;b=3;c=2;a=b+c;}分支语句:if(32)a=3elsea=2;循环语句:for(I=1;I10;I++)sum=sum+I;第1章c++概述海南大学三亚学院理工分院程序书写一行可以写多个语句;一般写一条语句。采用适当的缩格书写方式。程序中的名字(标识符)区分大小写。程序的书写采用自由格式;语句用分号结束第1章c++概述海南大学三亚学院理工分院1.每个c++程序必须有且仅有一个(_).A.函数B.主函数C.预处理命令D.语句2.c++程序的扩展名是(_).A.CB.cppC.dwsD.dsp3.c++程序中的语句是以(_)结束.A.回车B.句号C.{}D.分号4.c++程序是谁发明的(_).A.比尔.盖次B.Dennis.M.RitchieC.BjarneStroustrupD.JamesGosling5.编写C++程序一般需经过的几个步骤依次是()。A.编译、编辑、连接、调试B.编辑、编译、连接、调试C.编译、调试、编辑、连接D.编辑、调试、编辑、连接第1章c++概述海南大学三亚学院理工分院VISUALC++6.0的集成开发环境项目工作区窗口菜单栏工具栏标题栏文档窗口输出窗口状态栏第1章c++概述海南大学三亚学院理工分院选择打开最近的工作区打开一个已有的空间保存当前空间关闭当前空间选择打开最近的工作区文件文件菜单第1章c++概述海南大学三亚学院理工分院项目菜单激活指定项目将组件或外部的源文件添加在当前的项目中修改当前编译和调试项目的一些设置将项目加入到项目工作区中第1章c++概述海南大学三亚学院理工分院组建菜单重新编连整个项目文件生成应用程序的EXE文件编译C或C++源代码文件执行应用程序第1章c++概述海南大学三亚学院理工分院文件布局1-1文件夹Res文件夹Debug或Release文件夹编连过程产生的文件其他资源1-1.rc2等类文件.cpp.h资源文件1-1.rc项目及项目工作区文件运行文件1-1.exe图标文件1-1.ico等工具栏资源Toolbar.bmp在VC++项目中通过采用文件夹方式来管理所有文件。它将项目名作为文件夹名,在此文件夹下包含了源代码文件(.cpp,.h)、项目文件(.dsp)、项目工作区文件(.dsw)及相应的调试或发行、资源等子文件夹第1章c++概述海南大学三亚学院理工分院上机步骤一、创建一个新的项目文件方法一:创建项目中建立原程序文件-新建,弹出[新建]对话框。在[工程]中选择项目类型为“win32consoleapplication”。在[工程名称]中输入所指定的项目名。在[位置]文本框内输入项目文件位置。在随着弹出的下一步对话框中选择[一个空项目],再[完成]