【时时三省】(C语言基础)使用字符串处理函数2
山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省
⑤strcmp函数
字符串比较函数
其一般形式为
strcmp(字符串1 ,字符串2)
strcmp是STRing CoMPare(字符串比较)的缩写。它的作用是比较字符串1和字符串2。例如:
strcmp ( strl , str2 );
strcmp ( " China " , " Korea”) ;
stremp ( strl," Beijing”);
说明:
字符串比较的规则是:将两个字符串自左至右逐个字符相比(按ASCII码值大小比较),直到出现不同的字符或遇到\0 '为止。
( 1 )如全部字符相同,则认为两个字符串相等;
( 2 )若出现不相同的字符,则以第1对不相同的字符的比较结果为准。例如:
" A " < " B " , " a " > " A " , " computer " > " compare " , " these " > " that " , " 1A " > " $ 20 " , " CHINA > " CANADA "," DOG " < " cat " , " Tsinghua " > " TSINGHUA”
说明:
如果参加比较的两个字符串都由英文字母组成,则有一个简单的规律:
在英文字典中位置在后面的为“大”。
例如computer在字典中的位置在compare之后,所以" computer " > " compare”。但应注意小写字母比大写字母“大”,所以”DOG " <”cat”。
比较的结果由函数值带回。
( 1 )如果字符串1与字符串2相同,则函数值为0。
( 2 )如果字符串1 >字符串2,则函数值为一个正整数。
( 3 )如果字符串1 <字符串2,则函数值为一个负整数。
注意:
对两个字符串比较,不能用以下形式:
if ( strl > str2 ) printf ( " yes”);
因为strl和str2代表地址而不代表数组中全部元素,而只能用
if ( strcmp ( strl , str2 ) > 0 )
printf ( " yes”);
这时,系统分别找到两个字符数组的第一个元素,然后顺序比较数组中各个元素的值。
⑥strlen函数
测字符串长度的函数
其一般形式为
strlen(字符数组)
strlen是STRing LENgth(字符串长度)的缩写。它是测试字符串长度的函数。函数的值为字符串中的实际长度(不包括'\0 '在内)。例如:
char str [ 10] = " China”;
printf ( " % d”, strlen ( str ) );
输出结果不是10,也不是6,而是5。也可以直接测试字符串常量的长度,例如:
strlen ( " China”);
⑦strlwr函数
转换为小写的函数
其一般形式为
strlwr(字符串)
strlwr是STRing LoWeRcase(字符串小写)的缩写。函数的作用是将字符串中大写字母换成小写字母。
⑧strupr函数
转换为大写的函数
其一般形式为
strupr(字符串)
strupr是STRing UPpeRcase(字符串大写)的缩写。函数的作用是将字符串中小写字母换成大写字母。