第7章 字符串和其应用-2011.pdf

  1. 1、本文档共66页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
程序设计技术 程序设计技术 C语言数据描述和C程序设计初步 C语言数据描述和C程序设计初步 结构化程序设计基础和C语言的控制结构 结构化程序设计基础和C语言的控制结构 数组及其应用 数组及其应用 函数与C程序结构 函数与C程序结构 指针与函数 指针与函数 指针与数组 指针与数组 字符串及其应用 字符串及其应用 结构体类型和联合体类型 结构体类型和联合体类型 C语言的文件处理及其应用 C语言的文件处理及其应用 位运算与枚举类型 位运算与枚举类型 字符串及其应用 字符串及其应用 C语言的字符串表示方法 字符串的常用处理方法及标准库函数 字符串表示方法 字符串表示方法 主要有两种方式来表示字符串: 使用指向字符类型变量的指针 通过定义字符类型指针变量,并将字符串或字符串常量 的首地址赋给该指针,用该指针变量来表示字符串数据, 例如 char *sPtr; *sPtr=”This is C String.”; 使用字符数组 首先定义字符类型的数组,然后将字符串数据的每一个 字符依次存放到指定的字符数组中,此后的程序代码中可以 使用该字符数组的名字表示其所存放的字符串数据。 例如 char str[7]=”abcd” 字符串表示方法 字符串表示方法 两种字符串数据表示方式的根本区别 两种字符串数据表示方式的根本区别 (1) 定义一个字符类型指针变量表示字符串 例如语句char *sPtr=”abcd”; 系统处理的方法: 1. 分配一段连续的存储区域并存放指定的字符串常量 2.将该存储区域的起始地址 3. 由于sPtr是指针变量,可以根据需要指向任意合法的字 符数据对象 例如sPtr=”1234” sPtr 改变指向从”abcd”转变成为表示”1234” 。 字符串表示方法 字符串表示方法 a b c d \0 a b c d \0 sPtr a) 指针变量指向字符串常量 a b c d \0 1 2 3 4 \0 sPtr b) 指针变量改变原指向指向另一字符串 图7.1 指针变量与字符串数据对象的关系示意图 字符串表示方法 字符串表示方法 (2) 定义字符类型数组表示字符串 例如语句char str[7]=”abcd”; , 本质意义: 1.字符数组str按指定长度在系统的内存储器中分配连续的 存储区域,字符数组的名字str表示起始地址, 2.将该存储区域的内容初始化为字符串数据”abcd” 。 a b c d \0 \0 \0 str 图7.2 数组名与其初始化值之间的对应关系 字符串表示方法 字符串表示方法 程序代码中任何试图修改数组名str值的操作或者试图 为数组整体赋值的操作都是错误的,请比较下面的两段代 码: /*正确的程序代码段*/ char *sPtr=”abcd”; … sPtr=”1234”; /* 改变指针变量sPtr的指向*/ /*错误的程序代码段*/ char str[7]=”abcd”; … str=”1234”;//错误赋值操作,试图将数组作为整体操作 字符串表示方法 字符串表示方法 两种表示方式下的不同意义: 两种表示方式下的不同意义: 使用字符类型指针来表示字符串数据时,字符串数据 是常量,任何试图修改常量数据的操作都是非法的, 亦即字符类型指针指向的常量字符串内容在程序中是 不能被修改的。 使

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档