全部博文(930)
分类: C/C++
2008-11-16 15:47:07
一、puts
名称: |
puts |
功能: |
向显示器输出字符串。 |
头文件: |
#include |
函数原形: |
int puts(const char *s); |
参数: |
s 字符串 |
返回值: |
成功返回输出的字符数,失败返回EOF |
put函数与printf函数在字符串输出中的区别:
puts在输出字符串时,遇到'\0'会自动终止输出,并将'\0'转换为'\n'来输出。
Printf在输出字符串时,遇到'\0'只是终止输出,并不会将'\0'转换为'\n'来输出。
二、strcat
名称: |
strcat |
功能: |
字符串连接函数 |
头文件: |
#include |
函数原形: |
char *strcat(char *restrict s1,const char *restrict s2); |
参数: |
s1 字符串1 s2 字符串2 |
返回值: |
返回字符数组1的首地址 |
Strcat能够将字符串2连接到字符串1的后面。要注意的是字符串1必须能够装下字符串2。连接前,两串均以'\0'结束,连接后,串1的'\0'被取消,新串最后加‘'\0'
如:
char name[100]="Mike";
char number[20]="001";
strcat(name,number);
puts(name);
输出为:
Mike001
三、strcpy
名称: |
strcpy |
功能: |
字符串拷贝函数 |
头文件: |
#include |
函数原形: |
char *strcpy(char *restrict s1,const char *restrict s2); |
参数: |
s1 字符串1 s2 字符串2 |
返回值: |
返回字符数组1的首地址 |
strcpy将字符串2,拷贝到字符数组1中去,要注意,字符数组1必须足够大,拷贝时'\0'一同拷贝,不能使用赋值语句为一个字符数组赋值。
四、strcmp
名称: |
strcmp |
功能: |
字符串比较函数 |
头文件: |
#include |
函数原形: |
char *strcmp(const char *s1,const char *s2); |
参数: |
s1 字符串1 s2 字符串2 |
返回值: |
返回int型整数 |
strcmp对两串从左向右逐个字符比较(ASCLL吗),直到遇到不同字符或'\0'为止。若s1大于s2返回正整数,若s1小于s2返回负整数,若s1等于s2返回0。要注意字符串比较不能用"= =",必须用strcmp.
#include #include
typedef struct { char name[20]; char num[20]; }USERINFO;
main() { USERINFO user; char newname[ ]="Rose"; int result; strcpy(user.name,"Mike"); result=strcmp(user.name,newname); if(result!=0) printf("different person!"); else Printf("the same person!"); } |
五、strlen
名称: |
strlen |
功能: |
字符串长度函数 |
头文件: |
#include |
函数原形: |
int strlen(const char *s); |
参数: |
s 字符串 |
返回值: |
返回字符串实际长度 |
strlen计算字符串长度并返回,不包含'\0'在内。
如:char str[100]="study";
int length;
length=strlen(str);
printf("%d",length);
输出:5