二级C语言培训PPT.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
二级C语言培训PPT

第 九 章 对C的深入探讨 第 十 章 结构体与共用体 第十一章 文件 Merry Christmas Christmas is Jesus Christmas’ birthday. 西元354年罗马主教指定12月25日为耶稣诞生日。 现在的圣诞节日期跟西元纪年的创制是密不可分的。 西元纪年创制于西元5世纪,后来圣诞节这一天就按格里高利历法,即西元纪年的“公历”来确定了,而日历按着假定日期把时间分为公元前(耶稣基督诞生前)和公元后(A. D. 是拉丁文缩写,意思是“有了我们主--耶稣的年代”)。 BC 9.1 main函数的参数 C编译器允许main函数没有参数,或者有2个参数 没有参数时 void main( ) //和书上一样,这里的void可不写 { …… } 两个参数时 void main(int argc, char *argv[ ]) //同上 { …… } argc是参数的个数,argv是存储参数字符串的指针数组 例子: #include stdio.h int main(int argc, char *argv[ ]){ int count; printf(“命令行中有%d个参数:\n”, argc – 1); for(count =1 ; countargc; count++) printf(“%d: %s\n”, count, argv[count]); return 0; } 9.2 编译预处理 C中,以“#”开头的行,都称为“编译预处理”命令行,其并不是C语言本身的组成部分,而是由预处理程序在编译前作出相应的处理 编译预处理就是C编译程序对C源程序进行编译之前,由编译预处理程序对这些命令行处理的过程 一、无参数的宏定义 形式:#define 宏名 字符串(或数值) 注意: 宏名前后应有空格 宏定义是用宏名代替其后面的内容,预处理过程中要进行展开 宏定义命令后无封号 字符串中如果有运算符号,则要注意替换后的结果,通常可以在合适的位置加上括号 例: #define E 2.71828 #define N (8*x+x*x) 一些注意的地方: #和define之间无空格 宏名习惯采用大写字母写,以与变量名区别 宏定义与变量定义不同,只做简单的替换,不分配空间 宏定义不是C语句,所以其后无封号 宏定义可以嵌套使用 #define PI 3.14159 #define R 5.5 #define CIRCLE 2.0*PI*R 宏的有效范围到源程序结束,所以一般在程序开头定义它 二、带参数宏定义 宏替换可以带有形式参数,程序中,可以使用实际参数代替这些形式参数 例子: #include stdio.h #define MAX(a, b) (ab?)a:b main( ) { int i=18, j = 16; printf(“The max number is:%d”, MAX(i ,j )); } 运行结果:The max number is : 18 注意以下几点: 带参数宏定义中,宏名和形参表之间没有空格 宏定义中形参是标识符,宏调用中实参可以是表达式 三、带参数的宏和带参数的函数的区别 四、文件包含 文件包含命令是把指定的文件插入到该命令行位置取代该命令行,从而把指定的文件和当前源文件连成一个源文件 形式: #include 文件名 #include “文件名” 区别 直接在包含头文件的目录中去查找文件 “ ” 先在当前源文件目录中查找文件,没有找到的话再到包含头文件的目录中查找 注意:若需要包含多个头文件,可以使用多条include语句 9.3 变量与函数的存储分类 一、变量的存储分类 C中变量定义的完整形式是: [存储类型] 数据类型 变量名; // []表示可选 存储类型分为: static 静态全局变量 static 静态局部变量 register 寄存器变量 auto 自动变量 变量的存储类型决定了变量的生存期,即变量值何时存在 1.静态变量(static) 编译时分配存储空间,所占存储单元直到程序结束才释放,它的值在程序运行过程中一直存在,且变量的初始化只进行一次 静态变量包括: 全局变量 全局变量总是静态分配的,不能使用auto、register定义全局变量,关键字static作用于全局变量时,具有特殊含义,将限制该变量只在当前文件有效,不能被其他文件访问 局部变量 省略变量存储类型时,局部变量默认为auto类型,存储在动态存储区中,用static可以定义一种特殊的局部变量——将局部变量存储在静态存储区中 注意: 1.静态变量若没有手动初始化,都会自动进

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档