对于字符串首先第一反应所需的头文件就是 #include <cstring> 或者写成( #include <string.h>)
在这个头文件下呢,有几个常用的函数:
1. strlen(s) //可见字符的个数
1 #include<cstring> #include<cstdio> 2 int main() 3 { 4 char s[10] = "abcde"; 5 printf("strlen(s) = %d\n", strlen(s)); 6 }
答案:
2. strcmp(a,b) //比较函数(当a>b时,结果等于1;当a<b时,结果等于-1;当a==b时,结果等于0)
字符串大小的比较是以ASCII 码表上的顺序来决定,此顺序亦为字符的值。
(1)先将每个对应的值进行比较
(2)如果长度不够会在空的地方补空字符
3. strcpy(a,b) //拷贝函数
其实在库中函数的定义是:
char *strcpy(char *dest,const char *src);
将参数src字符串拷贝到参数dest字符串所指的地址
4. strcat(a,b) //连接函数
其原型为:
char *strcat(char *dest,const char *src); (dest 为目的字符串指针,src 为源字符串指针)
strcat() 会将参数 src 字符串复制到参数 dest 所指的字符串尾部;dest 最后的结束字符 NULL 会被覆盖掉,并在连接后的字符串的尾部再增加一个 NULL。
1 #include<cstring> 2 #include<cstdio> 3 int main() 4 { 5 char s1[10] = "abcde"; 6 char s2[10] = "fgh"; 7 strcat(s1, s2); 8 printf("%s", s1); 9 }
答案:
以上就是在运用字符串时常用的几个字符串函数。
但是有时候有几个函数会帮你在敲代码的过程中少去很多繁琐的代码,即比较便利。
1.字母的大小写转换
所需的头文件都是#include <ctype.h>
(1)大写转换为小写:
strlwr(str) 原型为:char *strlwr(char *str);
(2)小写转换为大写:
strupr(str) 原型为:char *strupr(char *str);
注意:这两个函数其实都不是标准的库函数,在使用的时候记住只能在windows下使用(VC,MinGw等),在Linux中需要自己定义。
2.字符串转化为数字
3.数字转化为字符串
(这两个函数曾经特意写过一篇:http://www.cnblogs.com/jaydenouyang/p/6486207.html)
4.判断函数
都需要头文件:#include <ctype.h>
(1)判断字母:isalpha(s[i]) (如果该字符是字母的话返回非0值,否则返回0)
(2)判断数字:isdigit(s[i]) (如果该字符是数字的话返回非0值,否则返回0)
(3)判断字母和数字: isalnum(s[i]) (如果该字符是字母或者数字的话返回非0,否则返回0)