黑马程序员技术交流社区
标题:
puts/gets /strcmp归纳
[打印本页]
作者:
medley
时间:
2016-9-17 20:30
标题:
puts/gets /strcmp归纳
(1) puts:输出字符串到控制台
(2) gets:接收用户输入的字符串
(3) 计算字符串的长度:strlen
unsigned long len = strlen(arr);
(4) strcmp函数:
作用:用来比较字符串之间的大小
(5) strcpy
(6) strcat
作者:
梦里花落知多少s
时间:
2016-9-17 21:22
与字符串相关的常用函数
-----------下面这两个函数的声明是在stdio.h中 ---------
1. puts();数
作用: 用来输出字符串的
语法格式:puts(存储字符串的字符数组名);
例: char name[] = “jack”;
puts(name);
优点: 输出完毕之后,自动换行
缺点: 只能输出字符串,也不能使用占位符
2. gets();数
作用: 从控制台接收用户输入1个字符串数据
语法格式:gets(存储字符串的字符数组名);
例: // 声明一个数组来保存字符串数据
char name[10];
// 提示用户输入名字
printf(“请输入你的名字:");
// 使用gets函数接收用户输入的字符串数据并存储
gets(name);
// 用puts函数输出用户输入的字符串数组
puts(name);
优点: 当用户输入的字符串数据包括空格的话,它会连空格,一起接收。
例: char name[] = “Jack and rose”;
gets(name);
puts(name);
—> jack and rose
缺点:和scanf函数一样,不安全。
当用来存储字符串的数据的字符数组的长度不够的话,程序就会崩溃。
---下面这4个函数的声明是在string.h这个头文件中 ----
3. strlen();函数
作用: 得到存储在字符数组中字符串数据的长度
语法格式:strlen(字符串数组的名字);
4. strcmp();函数
cmp —> compare 比较。
意思就是两个字符串数组进行比较。
作用: 比较两个字符串数组的大小的
语法格式:strcmp(字符串1,字符串2);
返回值是 int 类型的
如果返回的是负数,就说明字符串1比字符串2小;
如果返回的是正数,就说明字符串1比字符串2大;
如果返回的是0,就说明字符串1和字符串2大小一样。
比较规则:比的是相同位置字符的ASCII码的大小。
5. strcpy();函数
cpy —> copy 复制。
作用: 把存储在1个字符数组中的字符串数据拷贝到另外1个字符串数组中存储。
语法格式:strcpy(字符串1,字符串2);
将字符串2拷贝到字符串1数组中。
可能的问题:字符串1的长度没有字符串2的长,复制过去的时候,字符串1的空间不够用,此时运行就会报错!
6. strcat();函数
cat —> concat 连接。
作用: 把存储在字符数组2的字符串连接在字符串1的后面。将两个字符串数组合并成一个字符串数组。
语法格式:strcat(字符数组1,字符数组2);
可能问题:如果字符数组1中无法存储下字符数组2的字符串数据,运行就会报错!
作者:
medley
时间:
2016-9-19 22:38
梦里花落知多少s 发表于 2016-9-17 21:22
与字符串相关的常用函数
-----------下面这两个函数的声明是在stdio.h中 ---------
不错哦~~~~~~~~~~~~~
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2