- 0
- 0
- 约2.85千字
- 约 19页
- 2018-04-16 发布于河南
- 举报
08-字符串和字符数组
字符串和字符数组 字符串 字符串:连续的一串字符,比如一段文字: C++字符串常量 C++字符串在内存中的存储 C++将字符串的所有字符按顺序存储在内存空间中,并在末尾放置一个标志字符串结束的特殊字符\0 字符数组 char s[10]; char s2[10] = Hello; char s3[] = Hello; // 数组元素个数为6 字符数组的赋值与引用 char c[8]; // c = {c, h, i, n, a, \0}; // 错误 c[0]=c; c[1]=h; c[2]=i; c[3]=n; c[4]=a; c[5] = \0; 字符串的输入和输出 cin可以将整个字符串直接输入到字符数组中 cout 可以输出字符数组中的整个字符串 常见使用字符串的错误 char str[15]; str = Hello; 字符串处理函数 使用字符串处理函数,要包含头文件 #include string.h gets() 函数 字符串输入函数:除了可以用 cin 输入之外,也可以用 gets()函数输入。 puts()函数 字符串输出函数:除了可以用 cout 输出之外,也可以用 puts()函数输出。 例5-9 字符串输入输出例程 #include iostream #include string.h using namespace std; void main() { char s[35], n[] = C++ language.\n; gets(s); puts(n); puts(s); } 字符串复制 strcpy() 字符串连接 strcat() 字符串比较 strcmp() 格式:strcmp(str1, str2) 功能:按字典顺序比较两个字符串。 如果完全相等,返回0; 如果 str1 大于 str2, 返回正整数; 如果 str1 小于 str2, 则返回负整数 字符串长度测定 strlen() 格式:strlen(str) 功能:计算字符串的长度,即字符个数。该长度不包括结束标志 \0 例5-10:字符串应用举例 #include iostream #include string.h using namespace std; void main() { char s1[50] = The program ; char s2[] = is C++ language.; char s3[50]; strcpy(s3, s1); strcat(s1, s2); strcat(s3, is not C language.); cout s1 endl s3 endl; } * 字符串和字符数组 * H e l l o \0 字符串处理是现代软件的重要功能 C/C++中没有直接存储字符串的基本数据类型。 C++是一门优秀的程序设计语言。C++比C更容易为人们所学习和掌握 这是一个字符串 cout Hello, world endl; 字符串常量:用双引号括起来 H e l l o \0 例:Hello在内存中如下: 字符串结束标志。编码为0,不可打印 字符数组是保存和处理字符串的重要方式 字符数组:元素类型为字符型(char)的数组 定义了字符数组s char s[5] = {H, e, l, l, o}; s[4] = s[4] – a + A; //可以转为大写字母 cout s[0] s[1] s[2] s[3] s[4]; 当然可以象普通数组一样初始化,访问数组元素 char s1[10] = {H, e, l, l, o, \0}; 字符数组初始化,并放进一个字符串: 可以使用字符串初始化字符数组: 编译器会自动添加结束标志 定义之后,不能整体赋值 可以分别给每个元素赋值 char a[5], b[5] =Mike; a = b; a[0] = b[0]; 不能这样赋值 但可以逐个元素进行复制 X char str[15]; cout 输入你的姓名:; cin str; cout 你好, str; 注意:是使用数组名 输入你的姓名:Mike 你好,Mike 运行结果: char s1[20] = Hello, s2[] = world; cout s1 + s2; X X 初始化之后不能整体赋值 不支持使用+号进行字符串连接 事实上,数组名是常量,不可以出现在赋值号(=号)的左边 从C语言引入的字符串处理函数,可以完成类似赋值、连接等的功能 那么,C++怎么处理字符串呢? 格式: gets(str) 其中,str是接收字符串的首地址。字符数组名就是其中字符串的首地址 格式: puts(str) 其中
您可能关注的文档
- (一).11电气.doc
- 00--02硕士题.doc
- 01中心工作手册(YW-WI-ZK-01).doc
- 01四边形复习.ppt
- 02_软件注册和升级.ppt
- 05年到11年成人英语三级翻译(英文).doc
- 06拉伸与压缩.ppt
- 07-10宁夏高考l理科数学真题附答案.doc
- 07-RCPMIS实施指导手册之五-验工计价管理.doc
- 07~08第一学期期末试卷A(提前).doc
- 中国国家标准 GB/T 6675.9-2025玩具安全 第9部分:化学及类似活动的实验玩具.pdf
- 《GB/T 6675.9-2025玩具安全 第9部分:化学及类似活动的实验玩具》.pdf
- GB/T 46975-2025婴童用品 便携式婴儿睡篮技术要求.pdf
- 中国国家标准 GB/T 46975-2025婴童用品 便携式婴儿睡篮技术要求.pdf
- 《GB/T 46975-2025婴童用品 便携式婴儿睡篮技术要求》.pdf
- 《GB/T 6675.14-2025玩具安全 第14部分:指画颜料要求和测试方法》.pdf
- GB/T 6675.14-2025玩具安全 第14部分:指画颜料要求和测试方法.pdf
- 中国国家标准 GB/T 6675.14-2025玩具安全 第14部分:指画颜料要求和测试方法.pdf
- 中国国家标准 GB/T 33772.3-2025质量评定体系 第3部分:印制板及层压板最终产品检验及过程监督用抽样方案的选择和使用.pdf
- 《GB/T 33772.3-2025质量评定体系 第3部分:印制板及层压板最终产品检验及过程监督用抽样方案的选择和使用》.pdf
原创力文档

文档评论(0)