字符与字符串第九章变量类别与编辑预处理.ppt_第1页
字符与字符串第九章变量类别与编辑预处理.ppt_第2页
字符与字符串第九章变量类别与编辑预处理.ppt_第3页
字符与字符串第九章变量类别与编辑预处理.ppt_第4页
字符与字符串第九章变量类别与编辑预处理.ppt_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1,第八章字符与字符串,2,以前介绍的字符输入输出方法:scanf(“%c”,四个函数都是在头文件stdio.h中定义的,3,1.字符输入函数getchar(),例如:charc;c=getchar();从键盘上输入:a则字符型变量c等于字符a。上式等价于scanf(“%c”,4,但是不是所有场合二者都可以互相替换。下面我们列出了它们的不同之处:(1)getchar()一次只能接收一个字符。(2)getchar()可以接收回车字符。而scanf()将回车作为数据的间隔符或结束符。(3)getchar()接收的字符可以不赋给任何变量。,5,2.字符输出函数putchar(),例如:charc=A;putchar(c);结果是输出字符变量c的值。,6,8.2字符数组,如果有一个字符序列:IlikeC,我们可以把它看作是如下8个字符的集合:I,l,i,k,e,C;可以将这个字符序列存入字符数组中;,7,8.2字符数组,该字符数组的赋值可以采用三种方法:方法一:初始化方法二:分别赋值,8,8.2字符数组,该字符数组的赋值可以采用三种方法:方法三:循环赋值总结:除了使用初始化方法,只能一个元素一个元素赋值。,9,8.2字符数组,同样,将字符数组中的内容全部输出,也只能一个元素一个元素地输出:,10,8.2字符串,字符串的处理是基于字符数组的。字符串的存储特点:实际存储时,在其尾部添加了一个结束标志0。说明:0代表ASCII码为0的字符,是一个空操作符,无显示内容,表示什么操作也不做。采用字符数组存放字符串:赋值时应包含结束标志0。,11,8.2字符串,例如:将“IlikeC”存放入数组c中,实际存放了9个字符:I,l,i,k,e,C,0;字符串在字符数组中的状态:,12,8.2字符串,字符串对应的字符数组的赋值方法:方法一:初始化方法二:分别赋值,13,8.2字符串,字符串对应的字符数组的赋值方法:方法三:循环赋值总结:末尾增加了一个0字符。,14,8.2字符串,字符串的输出也可以采用单个字符一个一个输出的方式:,15,8.2字符串,字符串除了具备以上字符数组的处理方式之外,还可以采用C语言提供的输入输出字符串的格式符“%s”。所以,方法四为:注意:字符数组的名字c表示的是该数组的首地址,所以无需加地址符charname210=”John”,”Marry”;charname210=”John”,”Marry”;三种方法效果一样。,25,第九章变量类别与编译预处理,26,全局变量和局部变量,C语言根据变量作用域的不同,将变量分为局部变量和全局变量。局部变量:变量定义的位置在函数内部。全局变量:变量定义的位置在函数外部。不同的定义位置决定了变量的作用范围(称为作用域)。,27,宏定义,C语言在对源程序进行正常编译之前,先对一些特殊的预处理命令作解释,产生一个新的源程序(称做编译预处理),之后再进行通常的编译。在源程序中,所有预处理命令行都以符号“#”开头,并且结尾不用分号。C语言提供的预处理命令主要有:宏定义、文件包含和条件编译。其中宏定义分为带参数的宏定义和不带参数的宏定义。,28,一、不带参数的宏定义不带参数的宏定义的一般形式为:#define标识符字符串它的作用是在编译预处理时,将源程序中所有标识符替换成字符串。例如:#definePRprintf#defineN2宏定义常用来定义符号常量。,29,无参数的宏定义使用时,要注意以下几个问题:(1)宏名一般用大写字母,以便与变量名的区别。用小写字母也不算错。(2)在编译预处理时宏名与字符串进行替换时,不作语法检查。(3)宏名的有效范围是从定义位置到文件结束。如果需要终止宏定义的作用域,可以用#undef命令。(4)宏定义时可以引用已经定义的宏名。,30,二、带参数的宏定义,带参数的宏定义的一般形式为#define标识符(参数表)字符串它的作用是在编译预处理时,将源程序中所有标识符替换成字符串,并且将字符串中的参数用实际使用的参数替换。例如:#defineS(a,b,c)(a+b+c)/2则如果源程序中使用了S(3,4,5),在编译预处理时将替换为(3+

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论