第十一章 字符串和字符串函数

来源:互联网 发布:淘宝怎么装修模板 编辑:程序博客网 时间:2024/05/21 11:25

第十一章

1、有\0才能叫字符串

 

2、char *m3 &  char m3[]

后者m3[]是数组形式,是一个地址常量,不能++m3;

前者m3是一个指针变量,可以++m3;

 

3、字符串输入

 

停止

特点

例子

特殊用法

gets()

遇到换行符

不检查预留空间,宜溢出

Gets(name)

While(gets(name)!=NULL)

检查是否空输入,当没有任何输入时,name不会被输入任何东西

fgets()

遇到换行符或者达到指定最大读取容量

 

Fget(name,MAX,stdin)

Fegt(写入的变量,最大容量,从哪里写入)

 

scanf()

空格、制表符、换行符

读取成功时会返回一个整数,就是读取的项目数;或者遇到文件结束时返回一个EOF

Scanf(“%5s %10s”,name1,

name2)

 

 

4、字符串输出

 

例子

特点

puts

puts(str1)

单行显示,自动在字符串最后添加一个换行符。

fputs

fputs(line,81,stdin)

能指定输出长度,不会自动添加换行符。

printf

 

 

 

5、字符串函数

 

功能

例子

注意

strlen

检查字符串长度

Strlen(str)

 

strcat

第二个字符串拷贝到第一个字符串结尾

Strcat(s1,const s2)

不检查第一个数组是否能容纳第二个数组

strncat

Strcat进化版,指明了最大允许天界的字符的数量

Strncat(s1, const s2, MAX)

 

strcmp

字符串比较,如果两个字符串完全一样就会返回0

Strcmp(const s1, const s2)

S1比s2次序高则返回负数;s1比s2次序低则返回正数。

strncmp

比较指定位置的字符

Strncmp(list[i],”astro”,5)

比较list中以astro开头的单词

 

Strcpy

将第二个字符串复制到第一个字符串

Strcpy(s1, const s2)

1、不检查s1是否有位置容纳s2;

2、可以复制s1到s1指定位置,例如:strcpy(copy+7,orig)

strncpy

Strcpy升级版,能指定最大可复制字符数。

Strcpy(s1,const s2,MAX)

 

sprintf

将几个元素组合成一个字符串

Sprintf(formal,”%s and %s will be %0.2f\n”,last,first,prize)

 

 

阅读全文
0 0
原创粉丝点击