字符串处理

与字符串有关的内置函数在头文件<string.h>

1.库函数strlen()

       size_t  strlen(char const* string)
       //测试字符串长度的函数
       函数的值为字符串的实际长度,注意:不包括'\0'在内
    
       size_t strlen(char const *string){int length = 0;for(length = 0;*string++!= '\0')length+=1;}

注意:size_t 为无符号整形,其头文件在stddef.h中

#include<stdio.h>
int main()
{// char str[] = "string1"char str[100] = "string";unsigned int n;n = strlen(str);printf("n = %d\n",n);printf("sizeof(str) = %lu\n",sizeof("string1"));printf("sizeof(str) = %lu\n",sizeof(str1));return 0;
}

2.strcpy()

      char  *strcpy(char *dst,char const *src)
      复制时,dst必须足够大,复制时连同'\0'一起复制

3.strcmp()

      int strcmp(char const *s1,char const *s2)    
      (1)相等,返回0
      (2)s1>s2 返回正整数
      (3)s1<s2返回负整数

4.strcat()

   char *strcat(char *dst,char const *src)
   将源字符串连接到目的字符串的后面,目的字符串要足够大,连接时将字符串1末尾的'\0'取消,在新字符串后保留'\0'
以上四个函数为不受限的字符串库函数
而不受限的字符串库函数:
            strncpy()    strncat()    strncmp()

5. strncpy()

       char *strncpy(char *dst,char const *src,size_t len)
  将src前面的len个字符复制到字符数组dst中,len不应大于字符数组dst中原有的字符,不包括'\0',如果len>strlen(src),则用'\0'填充到n长度,若len<strlen(src),则只有n个字符被复制到字符数组中,注意:结果不会以‘\0'字节结尾,因此需要在最后人工添加'\0'

6. strncat()

  char *strncat(char *dst,char const *src,size_t len);
  从src中最多复制len个字符到目标数组后面,strncat总是在结果字符串后面添加一个'\0'

7.strncmp()

   int strncmp(char const *s1,char const *s2,size_t len)
 最多比较len各字符

8.strchr()和strrchr()

  char *strchr(char cosnt *Str,int ch)
  strchr()在字符串str中查找字符ch第一次出现的位置,找到后返回返回一个指向该位置的指针
  char *strrchr(char const *str,int ch)
   strchr()在字符串str中查找字符ch最后一次出现的位置,找到后返回返回一个指向该位置的指针

9.strpbrk()

   char *strpbrk(char const *str,char const *group)
   查找第一个匹配group中任何一个字符,函数返回指向str中第1个匹配group中任何一个字符的字符位置的指针,若为找到匹配,则返回null指针
char string[20] = "hello there honey";
char a[] = "aiou";
char *ans;
ans = strpbrk(string,a);
*(ans + 1) = '\0';
printf("%s\n",string);

10.字符处理库函数

C语言之字符串处理函数相关推荐

  1. 探索C语言之字符串分割函数:strtok和strsep的区别

    探索C语言之字符串分割函数:strtok和strsep的区别 概述 strsep - extract token from string(linux 下) strtok, strtok_r - ext ...

  2. c语言计算字符串的函数是什么,字符函数

    字符函数(character function)是处理字符型数据的函数,其自变量或函数值中至少有一个是字符型数据. 中文名 字符函数 外文名 character function 应用领域 计算机等涉 ...

  3. perm函数c语言_理解C语言(三) 字符串处理函数

    1 字符串基础 字符串是一种重要的数据类型,有零个或多个字符组成的有限串行. 定义子串: 串中任意个连续的字符组成的子序列,并规定空串是任意串的子串,任意串也是其自身的子串,如字符串"ade ...

  4. C语言常用字符串操作函数大全详解(strstr,strtok,strrchr,strcat,strcmp,strcpy,strerror,strspn,strchr等)

    参考:string.h中常用字符串操作函数说明(strstr,strtok,strrchr,strcat,strcmp,strcpy,strerror,strspn,strchr等) 作者:一只青木呀 ...

  5. c语言常用字符串处理函数6,【总结】C语言中常见的字符串处理函数

    ------------------------------------------------------------------------------------------- C语言中没有字符 ...

  6. c语言中接收字符串函数,C语言中字符串处理函数拾锦

    之前在学习C语言的时候,知道C语言库函数中有很多字符串处理函数,但是没怎么好好利用它.最近,发现它们的作用实在太大了,而且有些是我从来都没有用过的.今天想整理一下,方便以后使用.比较容易理解的,就没有 ...

  7. 用C语言实现字符串反转函数strrev的经典方法

    字符串反转函数strrev不是C语言标准库函数,很多C语言编译器并没有提供对它的支持,比如你在Linux下输入Shell命令man 3 strlen,屏幕上会显示, STRLEN(3) Linux P ...

  8. linux替换指定字符串函数,C语言实现字符串替换函数

    C语言中没有提供字符串替换函数,网上能找到的类似函数也只是能替换一个,不能替换全部,工作中却常常要用到这个功能,故实现一个函数.该函数所使用到的相关函数均是自己实现,没有调用库函数. 相关代码如下: ...

  9. c语言内存复制函数,【C语言】 字符串操作函数及内存拷贝函数归总

    今天在这里把零散的一些常用的字符串操作函数和内存拷贝函数进行一下归总实现. 一 . 字符串操作函数 字符串操作函数有很多,这里我列举一些常用的函数,以及自实现的代码: 字符串拷贝函数: 函数原型:ch ...

  10. 【C 语言】字符串拷贝 ( 函数形参使用推荐方法 | 凡是涉及 修改指针指向 的操作一律创建新的 指针变量 执行 | 引入 辅助 局部 指针变量 )

    文章目录 一.函数形参使用推荐方法 二.完整代码示例 一.函数形参使用推荐方法 在函数中 , 形参 中的 指针变量 , 不建议直接使用 ; 推荐 在 函数中 , 定义 局部 指针变量 , 接收 形参中 ...

最新文章

  1. Python基础--线程
  2. 在 SAP BTP Kyma Runtime 上使用 Redis 读取和存储数据
  3. why we need getCoreClasses()
  4. Spring集成JavaMail并利用线程池发送邮件
  5. k8s 查看ip地址属于哪个pod_一个简单的例子理解Kubernetes的三种IP地址类型
  6. 2000坐标系高程与85高程转换_【科普】测量人必须知道的几大坐标系
  7. java se 9.0.4_jre 9下载(Java SE Runtime Environment)下载
  8. 对口计算机专业分数线,湖南省2021年普通高校招生本科批(职高对口类)平行一志愿投档分数线公布...
  9. 无网络访问权限怎么办_老司机教你IPV4无网络访问权限怎么办
  10. 移动端日期选择,下拉框选择效果
  11. 注意sizeof()返回的数无符号数,有符号数遇到无符号数时变成无符号数
  12. 【基础教程】信噪比+香农公式【1748期】
  13. 随机森林和多元线性回归R语言实现代码
  14. TTL232和RS232的区别
  15. 笔记:torch的基本运算
  16. 【PaddlePaddle】【论文复现】U-GAT-IT
  17. 阿里800k大数据工程师讲述:什么是大数据未来大数据的就业前景?
  18. 基于 Self-hosted Debug 的调试
  19. ORACLE 习题(一)
  20. 阿里巴巴erp【商业化操作系统】什么是erpadmin

热门文章

  1. js自定义类,混合的构造函数/原型方式
  2. 使用 core dump 查找程序遇到严重问题退出的原因
  3. android 关于多任务下载问题
  4. Perl函数pack/unpack(二进制读写)
  5. Android studio/sdk/appium/jdk遇到的坑坑洼洼
  6. 傅里叶级数FS, 离散傅里叶变换DFT
  7. 区块链BaaS云服务(17)纸贵科技Z-BaaS“数据治理”
  8. (chap9 基于HTTP的功能追加协议) Web 服务器管理文件的 WebDAV
  9. 2022年美国大学生数学建模竞赛——Problem C:交易策略
  10. [计算机网络] 【谢希仁】考前突击复习二、三、四章