《《C语言》课程PPT_第10章_字符串课件》由会员分享,可在线阅读,更多相关《《C语言》课程PPT_第10章_字符串课件(25页珍藏版)》请在金锄头文库上搜索。
1、字符串,第十章,2,回顾,上一节课主要讲解了以下内容: 函数的结构 函数声明和函数原型 按值传递 / 按地址传递 函数的作用域规则 多文件程序中的函数 函数指针,3,目标,解释字符串变量和常量 解释字符串指针 执行字符串的输入/输出操作 解释各种字符串函数 解释如何将数组作为参数传递给函数 讲解如何将字符串用作函数参数,4,字符串变量,字符串是以空字符(0)结束的字符数组 可以将字符串常量赋给字符串变量 字符串常量是由一对双引号括起来的字符序列 空字符0自动添加到字符串的内部表示中 在声明字符串变量时,应该为这个空结束符预留一个额外元素的空间,5,声明字符串变量,典型的字符串变量声明语句如下所
2、示: char str10; str 是一个字符数组变量,它最多可以容纳包括空结束符在内的 10 个字符,6,字符串常量,字符串常量是由一对双引号括起来的字符序列 字符串中的每个字符作为一个数组元素存储 例如 字符串“welcome”在内存中按照如下方式存储:,7,指向字符串变量的字符指针,可以使用字符指针来存储和访问字符串 声明字符指针语法:char* pStr; 声明字符串:char str10=“hello”; 使用字符指针指向字符串:pStr=str; 可以使用字符指针访问字符串,例如pStr0=a; 该代码将第一个字符修改为a,8,指向字符串常量的字符指针,可以声明字符指针直接指向字
3、符串常量,例如char* pStr=“Welcome”;字符指针pStr将指向字符常量“Welcome” “Welcome”为字符串常量,因此其值不能修改,例如代码pStr0=h;将引发一个错误,字符串常量不能改变,9,字符串 I/O 操作2-1,字符串 I/O 操作是通过函数来实现的,这些函数是标准 I/O 库 stdio.h 的一部分 gets() 函数是接受通过标准输入所获得的字符串的最简单的方法 它接受按下回车键以前输入的所有字符 gets() 函数用“0”字符替换末尾的换行符“n” 语法: gets(str);,10,字符串 I/O 操作2-2,puts() 函数用于在标准输出设备上
4、显示字符串 语法: puts(str); scanf() 和 printf() 函数用于使用一条语句来接受并显示混合数据类型 接受字符串的语法如下所示: scanf(%s, str); 显示字符串的语法如下所示: printf(%s, str);,11,字符串函数,处理字符串的函数可以在标准头文件 string.h 中找到。下面列举了这些函数执行的一些操作: 连接字符串 比较字符串 在字符串中查找一个字符 将一个字符串复制到另一个字符串中 计算字符串的长度,12,strcat() 函数,将两个字符串连接成一个字符串 语法: strcat(str1, str2); 将 str2 接到 str1
5、的末尾 函数返回 str1,13,strcmp() 函数,比较两个字符串并根据比较的结果返回一个整数值 语法: strcmp(str1, str2); 函数返回值的情况如下: 如果 str1str2,则返回值大于零,14,strchr() 函数,判断某个字符是否在字符串中出现 语法: strchr(str, chr); 该函数返回值的情况如下: 如果该字符在字符串中出现,将返回对应这个字符(由 chr 所指向的)在字符串 str 中第一次出现的指针 如果未出现,则返回 NULL,15,strcpy() 函数,将一个字符串中的值复制到另一个字符串中 语法: strcpy(str1, str2);
6、 str2 的值被复制到 str1 中 函数返回 str1,16,strlen() 函数,确定字符串的长度 语法: strlen(str); 该函数返回一个表示 str 的长度的整数值,17,将数组传递给函数 3- 1,当数组被当作参数传递给函数时,传递的只是该数组的地址 不带下标的数组名引用的是该数组的地址,18,将数组传递给函数 3- 2,声明数组以及其他变量,19,将数组传递给函数 3- 3,函数定义 注意函数参数的定义,函数调用 注意函数参数的传递,20,运行程序演示,运行上述程序,并且解释如何将数组传递给函数,21,将字符串传递给函数的示例3 - 1,字符串数组,22,将字符串传递给函数的示例 3- 2,函数调用,注意函数参数的传递,函数定义 注意函数参数的定义,23,将字符串传递给函数的示例 3- 3,解释红色代码的作用,24,运行程序演示,运行上述程序,并且解释如何将字符串传递给函数,25,总结,本课主要讲解了以下内容: 字符串变量和常量 字符串指针 执行字符串的输入/输出操作 各种字符串函数 如何将数组作为参数传递给函数 如何将字符串用作函数参数,