




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、哈尔滨工业大学哈尔滨工业大学 计算机科学与技术学院计算机科学与技术学院 苏小红苏小红 2021-7-242/37 2021-7-243/37 用双引号括起的一串字符用双引号括起的一串字符 是字符串常量,是字符串常量,C C语言自语言自 动为其添加动为其添加00结束符结束符 一串以一串以00结尾的字符在结尾的字符在C C语言中被看做字符串语言中被看做字符串 2021-7-244/37 是字符数组,但不代表字符串是字符数组,但不代表字符串 数组的最后一个元素必须是数组的最后一个元素必须是0 2021-7-245/37 2021-7-246/37 字符串是一串用双引号引起来的字符字符串是一串用双引号
2、引起来的字符 字符数组就是每个元素都是字符型的数组字符数组就是每个元素都是字符型的数组 字符指针就是指向字符类型数据的指针字符指针就是指向字符类型数据的指针 Hello China pStr 数组最后一个元素必须是数组最后一个元素必须是0才表示字符串才表示字符串 2021-7-247/37 = Hello China; Hello China char str12 = Hello China; char *pStr; = Hello China; 数组名数组名是地址常量是地址常量 字符指针字符指针是变量是变量 2021-7-248/37 char *pStr = Hello China; He
3、llo China char str12 = Hello China; char *pStr; pStr = Hello China; str pStr = 2021-7-249/37 一般不用字符串长度控制一般不用字符串长度控制 2021-7-2410/37 scanf(%s,str); printf(%s,str); gets(str); puts(str); 不能输入带空格不能输入带空格 的字符串的字符串 可以输入带空格可以输入带空格 的字符串的字符串 2021-7-2411/37 scanf(%s,str); printf(%s,str); gets(str); puts(str);
4、空格、回车或制空格、回车或制 表(表(TabTab)符是输)符是输 入数据的分隔符入数据的分隔符 ,因而不能被读,因而不能被读 入,输入遇到这入,输入遇到这 些字符时,系统些字符时,系统 认为字符串输入认为字符串输入 结束结束 2021-7-2412/37 2021-7-2413/37 2021-7-2414/37 2021-7-2415/37 不限制输入字符串的长度不限制输入字符串的长度 易引起缓冲区溢出易引起缓冲区溢出,给黑客攻击以可乘之机,给黑客攻击以可乘之机 2021-7-2416/37 能够能够限制输入字符串的长度限制输入字符串的长度 2021-7-2417/37 2021-7-24
5、18/37 2021-7-2419/37 strcpy(目的字符串目的字符串,源字符串源字符串);string copy strlen(字符串字符串);string length strcat(目的字符串目的字符串,源字符串源字符串); string combination strcmp(字符串字符串1,字符串字符串2); string comparison 2021-7-2420/37 strlen(字符串字符串);string length 打印结果是打印结果是 5 5、6 6,还是,还是1010? 不包括不包括00的实际字符的个数的实际字符的个数 2021-7-2421/37 strle
6、n(字符串字符串);string length 用长度控制字符串输出用长度控制字符串输出 2021-7-2422/37 strcpy(目的字符串目的字符串,源字符串源字符串);string copy 字符串能否用字符串能否用= =整体复制?整体复制? str2 = str1; strcpy(str2, str1); 注意复制的方向!注意复制的方向! str2必须足够大!必须足够大! 2021-7-2423/37 strcpy(目的字符串目的字符串,源字符串源字符串);string copy 字符串能否用字符串能否用= =整体复制?整体复制? str2 = str1; strcpy(str2,
7、str1); 想想这个函数是如何想想这个函数是如何 实现字符串复制的?实现字符串复制的? 2021-7-2424/37 strcat(目的字符串目的字符串,源字符串源字符串); string combination strcat(str2, str1); str2必须足够大!必须足够大! 2021-7-2425/37 strcmp(字符串字符串1,字符串字符串2); string comparison 字符串能否用字符串能否用 、 、=比较大小?比较大小? if (str2 = str1) if (strcmp(str2, str1) = 0) 2021-7-2426/37 strcmp(字符
8、串字符串1,字符串字符串2); string comparison 字符串是如何比较大小的?字符串是如何比较大小的? 当出现第一对不相等的字符时,就当出现第一对不相等的字符时,就 由这两个字符决定所在字符串的大由这两个字符决定所在字符串的大 小,返回其小,返回其ASCIIASCII码比较的结果值码比较的结果值 compare computer compare computer 表示表示 strcmp(str1, str2) 0为真为真 2021-7-2427/37 2021-7-2428/37 2021-7-2429/37 2021-7-2430/37 2021-7-2431/37 2021-7-2432/37 srcStr+ srcStr dstStr+ dstStr srcStr dstStr srcStr dstStr srcStr dstStr srcStr dstStr srcStr dstStr srcStr dstStr srcStr dstStr srcStr dstStr srcStr dstStr srcStr dstSt
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025劳动合同转让协议范本
- 2025劳动合同书电子版
- 葡萄农业植保知识培训课件
- 物体测试题及答案
- 营销电气知识培训课件
- 物流考试试卷及答案
- 2025设备租赁合同书
- 物联网题库及答案
- 2025关于电子商务平台的合作协议
- 2025年液环真空泵项目建议书
- 考勤培训课件
- 2025年北京高端商务车租赁及全程安全保障合同
- 2025版电商平台入驻及佣金分成合作协议
- 中国黄金集团招聘面试经典题及答案
- GB/T 4026-2025人机界面标志标识的基本和安全规则设备端子、导体终端和导体的标识
- 2025年智能家居产业互联互通标准与产业发展现状及问题研究报告
- 青岛版科学一年级上册(新教材)1.1 吹泡泡(教学课件)(内嵌视频)
- 感染性心内膜炎术后护理查房
- 2025年领导干部政治理论知识必考题库及答案
- 2025年提取公积金租房合同范本
- 推理能力题目及答案
评论
0/150
提交评论