- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于自然语言思想的递进C_C教程4ppt149
我们采用的教材 第6章名词的空间域、时间域和物理存储位置 名词的空间域 名词的时间域 名词的空间域和时间域不完全一致。有空间域的类型或量值,一定有时间域。 有时间域的类型或量值,不一定有空间域。 6.1 C/C++程序的逻辑结构 从可执行的意义看,程序从小到大可分为如下逻辑单位: 语句(statement)。 模块(block)。 嵌套模块。 6.1 C/C++程序的逻辑结构 从可执行的意义看,程序从小到大可分为如下逻辑单位: 文件(file)。 工程(project)。 工作区(workspace)。 6.2名词性的类型和量值在各逻辑结构上的空间域 6.2.1模块域 例6. 1 量值模块作用域的验证 #include stdio.h int fun(int x) { int a=20; //函数模块fun内定义的a printf(\na= %d, x= %d, a, x); //printf(\nb= %d, b); // error C2065: b : undeclared identifier return a+x; } void main() { int a=10; //main模块内定义的a int b; //main模块内定义的b printf(a= %d,a); //输出的是main函数内定义的a的值 b=fun(a); printf(\na= %d, b= %d, a, b); //printf(\nx= %d, x); //error C2065: x : undeclared identifier } 例6. 2 类型模块作用域的验证 #include stdio.h Person fun(); void main() { Person LiSi; // main模块内声明定义在另一个函数内类型Person的变量 LiSi=fun(); } Person fun() { struct Person { //函数模块fun内定义的类型Person int id; char name[10]; } ZS={1, 张三}; return ZS; } 6.2.2嵌套模块的层域 例6. 3 嵌套模块中的同名类型或量值的空间域 #include stdio.h void main() { struct Person { //main函数内(外层模块)定义的Person类型 int id; char name[10]; }; struct Date { //main函数内(外层模块)定义的Date类型 int year; int month; int day; }; Person ZS; {//内嵌模块开始 struct Person {// 内层模块定义的同名Person类型 int id; char name[10]; int Class; }; Person LiSi;//使用内层模块类型Person定义变量 Date Birthday; //Date类型只在外层定义,内层可见 printf(\n %d\n, sizeof(LiSi)); //输出内嵌Person } //内嵌模块结束 printf(\n %d\n, sizeof(ZS));//输出外层Person的大小 //printf(\n %d, sizeof(LiSi)); //error C2065: LiSi : undeclared identifier } 6.2.3文件域 例6. 4 文件中定义的类型或量值的空间域 #includestdio.h struct Person { //定义在文件中的Person类型 int id; char name[10]; }; int i; //定义在文件中的int型变量i /*前面定义了类型和变量*/ /*后面引用了类型和变量*/ void main() { Person ZS={1,张三}; //外层模块中引用Person类型 { i=10; // 内层模块内应用变量i printf(i= %d,i); } printf(\n%d %s\n, ZS.id, ZS.name); } 例6. 5 类型的先引用,后定义 #includestdio.h int i; /*类型定义在后,而引用在先,会出现莫名其妙的错误*/ void main() { Person ZS={1,张三}; //引用了定义在后面的Person类型 { i=10
您可能关注的文档
- JSP动态网站开发基础与上机指导ppt188.ppt
- 全国高级中等学校97年度家事类科(服装制作组)学生技艺竞赛竞赛.doc
- 全国高级中等学校九十三年度家事类科学生技艺竞赛.doc
- 全国高级中等学校九十四学年度家事类科学生技艺竞赛.doc
- 全天演EP430-GFX 服务器.pdf
- 全国高职高专招生就业协作会会员单位一览表 (排名不分先后,截止2006.doc
- 全州高中教师网络联盟学习.doc
- 全市人口计生委主任会议.doc
- NET框架程序设计(下)ppt198.ppt
- VB.NET 程序设计(中) ppt178.ppt
- 专题04 天气与气候(期末真题汇编,广东专用)(解析版).docx
- 专题04 中国的经济发展(百题精选)(期末真题汇编)(原卷版).docx
- 专题05 建设美丽中国(专项训练)(原卷版).docx
- 专题05 建设美丽中国(专项训练)(解析版).docx
- 专题05 居民与文化 发展与合作(百题精选)(期末真题汇编)(解析版).docx
- 2024年下半年教师资格考试中学《教育知识与能力》真题(含答案和解析).docx
- 专题05 居民与文化 发展与合作(百题精选)(期末真题汇编)(原卷版).docx
- 专题05 居民与文化 发展与合作(期末真题汇编,广东专用)(解析版).docx
- 专题05 居民与文化 发展与合作(期末真题汇编,广东专用)(原卷版).docx
- 统编版七年级语文上册课件《雨的四季》.pptx
原创力文档


文档评论(0)