您当前的位置: 首页 > 

哆啦A梦_i

暂无认证

  • 2浏览

    0关注

    629博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

strcat, strcmp,strcpy三大函数知识点

哆啦A梦_i 发布时间:2019-05-01 22:50:31 ,浏览量:2

1. strcat函数

一般形式:strcat(字符数组1,字符数组2) 作用:连接两个字符数组中的字符串,把字符串2接到字符串1的后面,结果放在字符数组1中,函数调用后得到一个函数值——字符数组1的地址。

例如:

char str1[30]={″Hello ″}; char str2[]={″Word″}; printf(″%s″,strcat(str1,str2));   输出: Hello Word

2. strcmp函数 

一般形式:strcmp(字符串1,字符串2)  作用:比较字符串1和字符串2。

例如:

strcmp(str1,str2); strcmp(″China″,″Korea″); strcmp(str1,″Beijing″);

(1)比较的结果由函数值带回

         a,若字符串1=字符串2,函数值为0。          b,若字符串1>字符串2,函数值为正。          c,若字符串1str2)                                   printf(″yes″);          b,正确形式:if(strcmp(str1,str2)>0)                                   printf(″yes");

   (3)  字符串是数组类型而非简单类型,不能用关系运算进行大小比较。

  

         if("ABC">"DEF")   /*错误的字符串比较*/

         if(strcmp("ABC","DEF")   /*正确的字符串比较*/

 

3. strcpy函数

(“字符串复制函数”) 一般形式:strcpy(字符数组1,字符串2)  作用:将字符串2复制到字符数组1中去。

例如: char str1[10],str2[]={″csdn″}; strcpy(str1,"csdn");

(1)字符数组1必须定义得足够大,以便容纳被复制的字符串。字符数组1的长度不应小于字符串2的长度。 (2)“字符数组1”必须写成数组名形式(如str1),“字符串2”可以是字符数组名,也可以是一个字符串常量。

         其中,字符串1必须是字符串变量,而不能是字符串常量。strcpy函数把字符串2的内容完全复制到字符串1中,而不管字符串1             中, 原先存放的是什么。复制后,字符串2保持不变。

         例如:   strcpy(str1,″China″);

(3)复制时连同字符串后面的′\0′一起复制到字符数组1中。 (4)可以用strncpy函数将字符串2中前面若干个字符复制到字符数组1中去。

         例如:strncpy(str1,str2,2);

         作用:将str2中前面2个字符复制到str1中去,然后再加一个‘\0’

(5)不能用赋值语句将一个字符串常量或字符数组直接给一个字符数组。

         例如:           str1=″China″;  不合法              str1=str2;       不合法

(6)用strcpy函数只能将一个字符串复制到另一个字符数组中去。          用赋值语句只能将一个字符赋给一个字符型变量或字符数组元素。          例如:(合法的使用)

          char a[5],c1,c2;            c1=′A′;  c2=′B′;           a[0]=′C′; a[1]=′h′; a[2]=′i′;            a[3]=′n′; a[4]=′a′; 

 (7)由于字符串是数组类型,所以两个字符串复制不通过赋值运算进行。  

          例如:

          t=s;   /*错误的字符串复制*/

          strcpy(t,s);   /*正确的字符串复制*/

关注
打赏
1556978864
查看更多评论
立即登录/注册

微信扫码登录

0.0376s