头文件include<string.h>
目录
1.puts字符串输出函数
一般形式:puts(字符数组)
作用:输出一个字符串(以‘\0’结束的字符序列)
知识补充:’\0’是判定字符数组结束的标志,在字符数组中’\0’占一个位置
#include<iostream>
using namespace std;
int main()
{
char s[6]="hello"; //'\0'占一个位置
int i=0;
while(s[i]!='\0') //'\0'是字符串结束的标志
{
cout<<s[i];
i++;
}
}
2.gets字符串输入函数
一般形式:gets(字符数组)
作用:从终端输入一个字符串到字符数组函数。
#include <stdio.h>
int main()
{
char s[100];
gets(s);
puts(s);
return 0;
}
3.strcat(字符串连接函数)
char *strcat(字符数组1,字符数组2)
作用:把两个字符数组中的字符串连接(字符串1在前,字符串2在后)。结果放在字符数组1中。
4.strcpy,strncpy(字符串复制函数)
①strcpy(字符数组1,字符串2)
作用:将字符串2复制到字符数组1中。
②strncpy(字符数组1,字符串2,n(字符个数))
作用:将字符串2中前n个字符复制到字符数组1中。
#include <stdio.h>
#include <string.h>
int main()
{
char s1[100]="Hello World";
char s2[100];
strcpy(s2,s1);
cout<<s2<<endl; //hello world
memset(s2,'\0',sizeof(s2)); // 重置s2
strncpy(s2,s1,5);
cout<<s2<<endl; //hello
return 0;
}
5.strcmp(字符串比较)
strcmp(字符串1,字符串2)
作用:比较字符串1和字符串2。
规则:将两个字符串中的字符从左至右逐个相比(按ASCII码大小相比),直到出现不同的字符或遇到'\0'为止。
比较结果由函数值带回:
(1)字符串1=字符串2,函数值为0。
(2)字符串1>字符串2,函数值为一个正整数。
(3)字符串1<字符串2,函数值为一个负整数。
6.strlen(字符串实际长度,不包括'\0')
7.strlwr(大写转为小写)
char *strlwr(char *str);
char str[] = “HTTP://see.xidian.edu.cn/cpp/u/shipin/”;
printf("%s\n", strlwr(str)); //输出http://see.xidian.edu.cn/cpp/u/shipin/
printf("%s\n", str); //输出http://see.xidian.edu.cn/cpp/u/shipin/
8.strupr(小写转化为大写)
strupr(字符串)
9.strstr(子串判断)
1.char *strstr(char *str1, char *str2)
判断str2是否为str1的字串,若是则返回str2在str1中首次出现的指针位置,若不是返回NULL;
char *str1 = "When you see people sing?";
char *str2 = "people";
char *pl;
pl=strstr(str1,str2);
printf("Substring is %s\n",pl); //输出:Substring is people sing?
2.strchr(str,ch)。
函数原型:char * strchr(char * str,char ch);
功能:找字符串str中第一次出项字符ch的位置,找到返回该字符在字符串中的地址的位置,找不到就返回null。