C语言字符串函数


1字符串拷贝
  strcpy(str1,str2)  ; str2 str1覆盖
   strncpy(str1,str2,n);//把str2的n个字节赋给str1的前n个字节,其他的不变 ,并不覆盖   
  例子
     str1 = "yaomingyue";
     str2 = "kkkk";
    strncpy(str1,str2,3);
   结果: str1 = "kkkmingyue";
2字符串连接
strcat(str1,str2);  //字符串连接
strncat(str1,str2,n);  //将str2的n个字符加到str1  的结尾
3  字符串中查找字符
 strchr(str1,'y');   //找到str1中第一个字符‘y’,并返回指向该字符的指针
 strrchr(str1,'y');    //找到str1中最后一个字符‘y’,并返回指向该字符的指针
例:str1 = "yaomingyue"
z = strchr(str1,'y');
printf("%s\n",z);
z = strrchr(str1,'y');
printf("%s",z);
结果:  yaomingyue
          yue
4字符串比较
  strcmp(str1,str2);  //  str1 和str2 完全相同时返回0;没比较完不同时返回1;str1是str2的前边一部分时返回-1;
strncmp(str1,str2,n);  //拿str2的前n个字符和str2比较
例:str1 = "kkkk";
      strncmp(str1,"kkmk",2);
 返回 0;
5 字符串找包含某些字符的开头长度
strspn(str1,"0123456789");    //str1 开头多长包含数字
如str1 是123abc546; 返回3;
6将字符串复制给一个指针,并给该指针molloc  字符串长度的内存;
    该指针给你free();
char * strdup(str1);
char * strndup(str1,n);   从str1中复制n个字符;
7字符串清零  
memset(str1,char c, len);    将一个字符串用 字符c 填充,len为填充长度;
清零  memset(str1,0,sizeof(str1));   
8  定位字符串中最先出现字符串的位置;
char *k = strpbrk("abc12345cde","1234567890");
printf("%s",k);
输出 : 12345cde;
9在字符串中找子串
strstr(str1,“23”);  返回位置
10   用逗号分割的字符串的提取
如“abc,123,ii"  变成  abc 123 ii  分别存到数组中

z = strtok(k,",");
printf("%s",z);
z = strtok(NULL,",");
printf("%s",z);
z = strtok(NULL,",");
printf("%s",z);
运行结果:  abc  123  ii    
提取完毕;
(个人理解) 当参数为NULL时,表是输入字符串还是先前的,而之前,已经指向逗号之后;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值