您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 设计及方案 > C语言工程设计01_基本元素_v2
C语言工程设计杨志钢zgyang@hrbeu.edu.cn2课程目的要求•目的:锻炼同学软件编程的能力,以VC为平台熟练掌握C语言相关的编程思想和技巧。•要求:–课堂教学/练习:20+-学时,4学时/次,讲授相关知识点,并进行课上练习。–课堂练习验收:当堂验收,上交程序。–课程作业:12+-学时,1-2学时布置任务,课下完成,安排答疑。–课程作业验收:最后一次课现场演示,并回答老师提出的问题,上交程序。3学习本课程的建议•准备一本有关C语言的学习用书。•多使用MSDN(MicrosoftDeveloperNetwork)帮助。•Internet帮助。4编程语言的学习•学习一门高级语言(C语言)•《数据结构》•《编译原理》5C语言的特点6C程序的7个步骤7C语言的编程机制8a1.cppa2.cpptest.cppa1.ha2.h翻译单元1翻译单元2翻译单元3a1.obja2.objtest.obj.libC++的标准库函数标准类库.exe可执行文件编译(Compile)预处理链接(Link)#include#include9建立一个空工程10建立一个空工程•Win32ConsoleApplication–Win32控制台应用程序,适合编写基于字符方式的应用程序。•MFCAppWizard(exe)–基于MFC类库(MicrosoftFoundationClasses,微软基础类)的Windows可执行应用程序。11例1.1建立一个Win32控制台工程(VS6)12例1.1建立一个Win32控制台工程(VS6)13例1.2建立一个Win32控制台工程(VS2008)14例1.2建立一个Win32控制台工程(VS2008)15例2.1建立一个MFC工程(VS6)16例2.1建立一个MFC工程(VS6)17例2.1建立一个MFC工程(VS6)18例2.2建立一个MFC工程(VS2008)19例2.2建立一个MFC工程(VS2008)20例2.2建立一个MFC工程(VS2008)21建立一个空工程•Win32Applization–Win32应用程序。如果要在VC中创建使用API(ApplicationProgrammingInterface,应用程序编程接口),而不使用MFC的应用程序,则选择该类型。•ATLCOMAppWizard–ATL是ActiveTemplateLibrary的缩写。使用ActiveTemplateLibrary可以创建包含小型ActiveX控件的ATL工程.该类型工程主要是创建COM组件。22建立一个空工程•MFCAppwizard(dll)–基于MFC的DLL工程。要在DLL中集成大量使用MFC类的功能,则可以选择它。•CLR控制台应用程序–CLR就是.NET平台,相当于一个虚拟机,官方称为托管代码,挺像JAVA的。23建立一个空工程•Windows窗体应用程序–从结果看和MFC应用程序一样,但相对复杂些。•MFC应用程序–MFC用windows窗体应用程序写了很多工具,可以直接使用,可以让我们的工作简化很多。24空工程中文件说明文件扩展名称含义.h(head)程序包含的头文件(放类、变量、函数的声明).cpp(cplusplus)程序源代码文件(放类、变量、函数的实现).dsw(developStudioWorkspace)工作区文件,文本格式,一个工作区可包含多个项目.dsp(developStudioProject)项目(工程)文件,文本格式,一般不要修改.clw(ClassWizard)类向导信息文件,实际上是INI文件的格式。有时候类向导出现问题,手工修改CLW文件可以解决。25文件扩展名称含义.rc资源文件,其中包括位图、光标、图标、菜单、对话框等。资源文件中,位图、光标、图标以及各自文件分别指定.res由.rc经资源编译器编译后的资源文件.def工程(项目)定义文件,程序的名称、内存形式以及输出和引入的变量或函数要在其中指定.aps(AppStudioFile)资源辅助文件,二进制格式,一般不用管它.opt工程关于开发环境的参数文件。如工具条位置等信息.plg编译信息文件,编译时的error和warning信息文件(实际上是一个html文件)空工程中文件说明26文件扩展名称含义.pdb(Programdatabase)记录程序有关的一些数据和调试信息,程序调试时用到它.pch(Pre-CompileFile)预编译文件,可以加快编译速度,但是文件非常大.map是执行文件的映像信息记录文件,除非对系统底层非常熟悉,这个文件一般用不着.exp只有在编译DLL的时候才会生成,记录了DLL文件的一些信息,一般没什么用.ncb无编译浏览文件(nocompilebrowser)。当VC的编辑语句自动完成功能出问题,可以删除此文件,编译工程后会自动生成空工程中文件说明27stdafx.h的作用•StandardApplicationFrameworkExtensions,没有函数库,只是定义了一些环境参数,使得编译出来的程序能在32位的操作系统环境下运行。◎你编写的任何.cpp文件都必须首先包含stdafx.h。◎如果你有工程文件里的大多数.cpp文件需要.h文件,顺便将它们加在stdafx.h(后部)上,然后预编译stdafx.cpp。◎由于.pch文件具有大量的符号信息,它是你的工程文件里最大的文件。执行程序时并不需要它们,且随着工程文件的重新建立,它们也自动地重新建立。28练习1:•建立一个简单的工程,显示欢迎界面–Win32控制台–MFC应用程序29C语言的基本元素——关键字30C语言的基本元素——数据类型31C语言的基本元素——数据类型32C语言的基本元素——常量一、字面常量——1,3,0xFF二、const常量——constintAddr=0x8000;三、宏常量——#defineADDR0x8000四、枚举33C语言的基本元素——常量34C语言的基本元素——常量35C语言的基本元素——常量36C语言的基本元素——常量37C语言的基本元素——常量#includestdio.hvoidmain(){charstr[]=HRBEU;printf(%d\n,sizeof(str));printf(%s\n,str);}6HRBEU38C语言的基本元素——常量练习一#includestdio.hvoidmain(){intx=(int)A;inty=(int)'A';printf(%d\n,x);printf(%d\n,y);}433758065练习二#includestdio.hvoidmain(){printf(%c\n,\(“HRBEU+2)[2]);}U39C语言的基本元素——变量40C语言的基本元素——变量41C语言的基本元素——常量#includestdio.hvoidmain(){floatx=3.6f;inti;i=(int)x;printf(x=%f,i=%d,x,i);}x=3.600000,i=3类型强制转换:一般形式:(类型名)(表达式)double(3/2);(double)3/2;42练习2:•下面是一些变量的定义,分别打印出各种变量占用内存空间的大小,使用sizeof()函数–chara='A';–charb[]=12345;–intc=100;–int*d=NULL;–inte[100]={0};–char*f=NULL;43C基本元素——运算符44C基本元素——运算符和表达式45C基本元素——运算符和表达式46C基本元素——运算符和表达式47C基本元素——运算符和表达式48C基本元素——运算符和表达式49C基本元素——语句50C基本元素——语句51C基本元素——程序结构52C基本元素——程序结构53C基本元素——程序结构54C基本元素——程序结构55C基本元素——程序结构56C基本元素——程序结构57C基本元素——程序结构58练习3:电子琴59C语言编程规范•排版•注释•标识符命名•可读性•变量、结构•函数、过程•可测性•程序效率•质量保证•代码编辑、编译、审查•代码测试、维护•宏建议:可以借鉴一些大公司的《软件编程规范》。
本文标题:C语言工程设计01_基本元素_v2
链接地址:https://www.777doc.com/doc-140709 .html