Sunset
602 字
3 分钟
一些函数
一些函数
puts 函数
puts 输出字符串的函数。
作用是把一个字符串输出到终端。由于可以用printf,所以puts用的不多。
例如:
char str[]={"hello world"};puts(str);// 输出:hello worldgets 函数
gets 用来取得一个字符串放置在字符串数组里去。
strcat 函数(字符拼接)
用法
c = strcat(a, b);新的字符数组c的结果就是字符串a和字符串b的链接,比如:
- A = “aaa”
- B = “bbb”
- C = “aaabbb”
注意:第一个字符数组必须足够大,链接后会吞掉第一个字符数组最后的
\0。
strcpy / strncpy 函数(字符串复制)
strcpy
strcpy是字符串复制函数,用法是这样的:
strcpy(a, b);就可以把字符串b里的字符复制进a中。比如:
b = "hello world";strcpy(a, b);printf("%s", a);// 输出:hello world注意!:字符串a必须足够长才能容纳字符b的复制进去的值。
strncpy
strncpy 函数:复制字符串的前n个字符进新的字符串里。
例如:
strncpy(a, b, 2);这样做之后,字符串b的前两项就复制进给了a。这样做会取代字符数组a的前两项而后面的元素都不变。
strcmp 函数(字符串比较)
基本用法
strcmp(a, b);从左到右每一项都按照ASCII码去比较大小,直至比较出来不同的字符或者到\0为止。
如果是纯英文字母组成的字符串数组,则比较”在字典中的位置”,也就是apple 小于 zoo。
需要注意的一点是:小写字母是大于大写字母的。
返回值
- 字符串1和2相同,返回0
- 字符串1大于字符串2,则返回1
- 字符串1小于字符串2,则返回-1
注意事项
值得注意的是,两个字符串不能直接比较,这样写是错误的:
if(a > b)必须要使用strcmp函数:
if(strcmp(a, b) == 1)strlen 函数(字符串长度)
字符串长度函数:strlen 用于计算字符串的长度,不包含\0。
比如:
char a[100] = "hello world";strlen(a);// 结果是11,而不是12(没有\0),也不是100strlwr / strupr 函数(大小写转换)
用法:
strlwr(a); // 转为小写strupr(a); // 转为大写这是大小写转换函数,把字符串中的所有字母转化为小写/大写的字符串函数。