C库函数中字符串处理函数集合

字符串处理函数:sscanf 的用法 一直对于一些日期字符串中数字的提取比较头疼,现看到 sscanf 对于字符串中的内容提取较方便,学习记录如下。方便以后查询。 阅读详情
C库函数中字符串处理函数集合

 

bcmp

 

原型:extern int bcmp(const void *s1, const void *s2, int n);
用法:#include <string.h>
功能:比较字符串s1和s2的前n个字节是否相等
说明:如果s1=s2或n=0则返回零,否则返回非零值。bcmp不检查NULL。

 

bcopy    

 

原型:extern void bcopy(const void *src, void *dest, int n);
用法:#include <string.h>
   功能:将字符串src的前n个字节复制到dest中
   说明:bcopy不检查字符串中的空字节NULL,函数没有返回值。

 

bzero

 

   原型:extern void bzero(void *s, int n);
   用法:#include <string.h>
   功能:置字节字符串s的前n个字节为零。
   说明:bzero无返回值。

 

memccpy   

 

   原型:extern void *memccpy(void *dest, void *src, unsigned char ch, unsigned int count);
   用法:#include <string.h>
   功能:由src所指内存区域复制不多于count个字节到dest所指内存区域,如果遇到字符ch则停止复制。
   说明:返回指向字符ch后的第一个字符的指针,如果src前n个字节中不存在ch则返回NULL。ch被复制。
  
memchr  

   原型:extern void *memchr(void *buf, char ch, unsigned count);
   用法:#include <string.h>
   功能:从buf所指内存区域的前count个字节查找字符ch。
   说明:当第一次遇到字符ch时停止查找。如果成功,返回指向字符ch的指针;否则返回NULL。

 

memcmp

 

   原型:extern int memcmp(void *buf1, void *buf2, unsigned int count);      
   用法:#include <string.h>
   功能:比较内存区域buf1和buf2的前count个字节。
   说明:
         当buf1<buf2时,返回值<0
         当buf1=buf2时,返回值=0
         当buf1>buf2时,返回值>0

 

memcpy

 

   原型:extern void *memcpy(void *dest, void *src, unsigned int count);
用法:#include <string.h>
   功能:由src所指内存区域复制count个字节到dest所指内存区域。
   说明:src和dest所指内存区域不能重叠,函数返回指向dest的指针。

 

memicmp
  
   原型:extern int memicmp(void *buf1, void *buf2, unsigned int count);      
   用法:#include <string.h>
   功能:比较内存区域buf1和buf2的前count个字节但不区分字母的大小写。
   说明:memicmp同memcmp的唯一区别是memicmp不区分大小写字母。
         当buf1<buf2时,返回值<0
         当buf1=buf2时,返回值=0
         当buf1>buf2时,返回值>0

memmove
  
   原型:extern void *memmove(void *dest, const void *src, unsigned int count);     
   用法:#include <string.h>
   功能:由src所指内存区域复制count个字节到dest所指内存区域。
   说明:src和dest所指内存区域可以重叠,但复制后src内容会被更改。函数返回指向dest的指针。

 

memset

 

   原型:extern void *memset(void *buffer, int c, int count);      
   用法:#include <string.h>
   功能:把buffer所指内存区域的前count个字节设置成字符c。
   说明:返回指向buffer的指针。

 

movmem  

 

   原型:extern void movmem(void *src, void *dest, unsigned int count);      
   用法:#include <string.h>
   功能:由src所指内存区域复制count个字节到dest所指内存区域。
   说明:src和dest所指内存区域可以重叠,但复制后src内容会被更改。函数返回指向dest的指针。

setmem

 

   原型:extern void setmem(void *buf, unsigned int count, char ch);      
   用法:#include <string.h>
   功能:把buf所指内存区域前count个字节设置成字符ch。
   说明:返回指向buf的指针。

 

stpcpy
  
   原型:extern char *stpcpy(char *dest,char *src);    
   用法:#include <string.h>
   功能:把src所指由NULL结束的字符串复制到dest所指的数组中。
   说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
         返回指向dest结尾处字符(NULL)的指针。

 

strcat

 

   原型:extern char *strcat(char *dest,char *src);      
   用法:#include <string.h>
   功能:把src所指字符串添加到dest结尾处(覆盖dest结尾处的'/0')并添加'/0'。
   说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
         返回指向dest的指针。

 

strchr  

 

   原型:extern char *strchr(char *s,char c);   
   用法:#include <string.h>
   功能:查找字符串s中首次出现字符c的位置
   说明:返回首次出现c的位置的指针,如果s中不存在c则返回NULL。
  
strcmp
   
   原型:extern int strcmp(char *s1,char * s2);    
   用法:#include <string.h>
   功能:比较字符串s1和s2。
   说明:
         当s1<s2时,返回值<0
         当s1=s2时,返回值=0
         当s1>s2时,返回值>0

 

stricmp,strcmpi   

 

   原型:extern int stricmp(char *s1,char * s2);      
   用法:#include <string.h>
   功能:比较字符串s1和s2,但不区分字母的大小写。
   说明:strcmpi是到stricmp的宏定义,实际未提供此函数。
         当s1<s2时,返回值<0
         当s1=s2时,返回值=0
         当s1>s2时,返回值>0

 

strcpy
  
   原型:extern char *strcpy(char *dest,char *src);    
   用法:#include <string.h>
   功能:把src所指由NULL结束的字符串复制到dest所指的数组中。
   说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
         返回指向dest的指针。

 

strcspn

 

   原型:extern int strcspn(char *s1,char *s2);     
   用法:#include <string.h>
   功能:在字符串s1中搜寻s2中所出现的字符。
   说明:返回第一个出现的字符在s1中的下标值,亦即在s1中出现而s2中没有出现的子串的长度。

 

strdup
   
   原型:extern char *strdup(char *s);     
   用法:#include <string.h>
   功能:复制字符串s
   说明:返回指向被复制的字符串的指针,所需空间由malloc()分配且可以由free()释放。

strlen
  
   原型:extern int strlen(char *s);      
   用法:#include <string.h>
   功能:计算字符串s的长度
   说明:返回s的长度,不包括结束符NULL。

 

strlwr

 

   原型:extern char *strlwr(char *s);      
   用法:#include <string.h>
   功能:将字符串s转换为小写形式
   说明:只转换s中出现的大写字母,不改变其它字符。返回指向s的指针。


strncat

 

   原型:extern char *strncat(char *dest,char *src,int n);      
   用法:#include <string.h>
   功能:把src所指字符串的前n个字符添加到dest结尾处(覆盖dest结尾处的'/0')并添加'/0'。
   说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
         返回指向dest的指针。

 

strncmp

 

   原型:extern int strcmp(char *s1,char * s2,int n);     
   用法:#include <string.h>
   功能:比较字符串s1和s2的前n个字符。
   说明:
         当s1<s2时,返回值<0
         当s1=s2时,返回值=0
         当s1>s2时,返回值>0

 

strnicmp,strncmpi

 

   原型:extern int strnicmp(char *s1,char * s2,int n);    
   用法:#include <string.h>
   功能:比较字符串s1和s2的前n个字符但不区分大小写。
   说明:strncmpi是到strnicmp的宏定义
         当s1<s2时,返回值<0
         当s1=s2时,返回值=0
         当s1>s2时,返回值>0

 

strncpy
   
   原型:extern char *strncpy(char *dest, char *src, int n);      
   用法:#include <string.h>
   功能:把src所指由NULL结束的字符串的前n个字节复制到dest所指的数组中。
   说明:
         如果src的前n个字节不含NULL字符,则结果不会以NULL字符结束。
         如果src的长度小于n个字节,则以NULL填充dest直到复制完n个字节。
         src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
         返回指向dest的指针。

 

strpbrk

 

   原型:extern char *strpbrk(char *s1, char *s2);      
   用法:#include <string.h>  
   功能:在字符串s1中寻找字符串s2中任何一个字符相匹配的第一个字符的位置,空字符NULL不包括在内。  
   说明:返回指向s1中第一个相匹配的字符的指针,如果没有匹配字符则返回空指针NULL。

 

strrev
  
   原型:extern char *strrev(char *s);       
   用法:#include <string.h>
   功能:把字符串s的所有字符的顺序颠倒过来(不包括空字符NULL)。
   说明:返回指向颠倒顺序后的字符串指针。

 

strset

 

   原型:extern char *strset(char *s, char c);      
   用法:#include <string.h>
   功能:把字符串s中的所有字符都设置成字符c。
   说明:返回指向s的指针。

 

strstr

 

   原型:extern char *strstr(char *haystack, char *needle);     
   用法:#include <string.h>
   功能:从字符串haystack中寻找needle第一次出现的位置(不比较结束符NULL)。
   说明:返回指向第一次出现needle位置的指针,如果没找到则返回NULL。

strtok

 

   原型:extern char *strtok(char *s, char *delim);      
   用法:#include <string.h>
   功能:分解字符串为一组标记串。s为要分解的字符串,delim为分隔符字符串。
   说明:首次调用时,s必须指向要分解的字符串,随后调用要把s设成NULL。
         strtok在s中查找包含在delim中的字符并用NULL('/0')来替换,直到找遍整个字符串。
         返回指向下一个标记串。当没有标记串时则返回空字符NULL。

 

strupr

 

   原型:extern char *strupr(char *s);      
   用法:#include <string.h>
   功能:将字符串s转换为大写形式
   说明:只转换s中出现的小写字母,不改变其它字符。返回指向s的指针。

C语言总结七:表示字符串的两种方式—字符数组与字符指针详细总结 C语言并没有专用的字符串类型的数据类型来存储一个字符串,字符串是C语言中重要的一块基本理论,掌握好字符串可减少实际开发经常出现的错误,本篇博客详细全面总结字符数组与字符串的定义及基本的使用方法,以及常用的库函数和针对内存操作的内存函数。 阅读详情

相关推荐

使用autodl服务器运行CasMVSNet以及使用colmap产生的数据

MVSNet学习

qq_44708206的博客 3274

STM32串口中常用的字符函数strlen,strcmp,strstr详解及具体程序实现过程

传入参数:数组的首元素地址。返回值: 返回 '\0'之前所有字符个数 数据 类型为size_t无符号整形。传入参数:两个要比较字符串数组的首元素地址。返回值:str1>str2 返回大于0的数str1=str2 返回0str1

LEIWENHUI666的博客 6636

Android - 蓝牙开发

文章目录科普SIG类型制式编程Classic BluetoothBluetooth Low Energy蓝牙的UUID是什么?有什么用? 科普 https://zh.wikipedia.org/wiki/%E8%97%8D%E7%89%99 蓝牙(英语:Bluetooth),一种无线通讯技术标准,用来让固定与移动设备,在短距离间交换资料,以形成个人局域网(PAN)。其使用短波特高频(UHF)无线电波,经由 2.4 至 2.485 GHz 的 ISM(工业、科学、医疗)频段来进行通信。1994 年由电信商

qq_43323826的博客 1万+

比较实用的三个字符串处理函数(STM32串口)

如果有漏洞,请大家留言继续修改 /* //函数名称:复制字符串 //参数:dest字符串容器,str被复制字符串,count复制长度 //返回值:无 // */ void my_strncpy(u8 *dest, u8 *src, int count)   {       u8 *tmp = dest;       while(count) {           if ((

花园王国---Garden kingdom 2万+

避坑指南:将大华官方Java SDK无缝迁移到SpringBoot 2.x项目的完整流程

本文详细介绍了如何将大华官方Java SDK无缝迁移到SpringBoot 2.x项目,重点解决内存管理、连接池设计和异步处理等核心问题。通过设备连接池化、异步非阻塞接口改造和内存管理优化,实现刷卡、刷脸等认证功能的高效整合,提升Web服务的稳定性和性能。

weixin_42557830的博客 418

动态规划与状态压缩:从TSP问题理解算法优化核心思想

动态规划是一种通过将复杂问题分解为重叠子问题并存储中间结果来避免重复计算的核心算法思想,广泛应用于路径优化、资源分配和序列决策等场景。其核心原理在于最优子结构和无后效性,通过状态设计和状态转移方程,将指数级复杂度问题转化为多项式时间可解。在工程实践中,状态压缩技术常被用于高效表示集合状态,例如使用二进制位运算来操作城市访问集合,从而大幅提升算法效率。本文以经典的旅行商问题(TSP)为例,深入剖析如何运用动态规划与状态压缩技术,将暴力穷举的指数级复杂度优化为可管理的计算量,为解决组合优化问题提供了重要的方法论

weixin_32075843的博客 365

STM32——C语言基础

C语言基础

asdf1234dfty的博客 4953

注册电气工程师详细教材

注册电气工程师详细教材

qq_40844444的博客 4256

【C语言】常用的字符串处理函数

介绍一下C语言常用的字符串处理函数。

Roger_717的博客 3113

Android 13 内置xapk安装包的方法

安装xapk 内置xapk

安卓兼职framework和app工程师的博客 224

关于 ABAP OPEN SQL 的动态 WHERE 条件和 Dynamic Selections

ABAP动态查询技术解析 本文介绍了ABAP中实现灵活数据库查询的动态选择技术,通过FREE_SELECTIONS函数组实现用户自定义查询条件。核心内容包括: 传统固定WHERE条件的局限性,无法满足业务多变需求 Dynamic Selections机制的工作原理,使用FREE_SELECTIONS_INIT初始化、FREE_SELECTIONS_DIALOG交互 完整Demo程序演示如何构建通用表数据浏览器: 用户输入表名后校验权限 调用动态选择函数生成条件 动态拼接WHERE子句执行查询 使用CL_SA

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 676

STM32串口通信

前期点灯一直用得的都是库函数,数据手册看的也是似懂非懂。最近需要用到串口,有很多地方看不懂。所以又回来学习,通过寄存器点灯 让我更加理解了

m0_62886561的博客 409

SpringBoot整合JWT实战:从零构建无状态认证系统,详解Token生成、验证与安全最佳实践

JWT在SpringBoot中的实现与应用 摘要:本文介绍了JWT(JSON Web Token)的基本概念、与Session机制的对比,以及SpringBoot项目中JWT的整合实现。JWT由Header、Payload和Signature三部分组成,具有无状态、跨域支持等优势。文章详细展示了如何在SpringBoot项目中配置JWT环境,封装JWT工具类来实现Token的生成、解析和验证功能,包括密钥管理、自定义声明、签名验证等核心操作。通过对比表格和生活化比喻,帮助读者理解JWT与传统Session的

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 1775

C库函数中字符串处理函数集合(转)

C库函数中字符串处理函数集合 bcmp 原型:extern int bcmp(const void *s1, const void *s2, int n); 用法:#include <string.h> 功能:比较字符串s1和s2的前n个字节是否相等 说明:如果s1=s2或n=0则返回零,否则返回非零值。bcmp不检查NULL。 bcopy 原型:extern v...

weixin_30627381的博客 94

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

C库函数中字符串处理函数集合(转)

C库函数中字符串处理函数集合 (转自优快云:http://blog.youkuaiyun.com/general1982/article/details/4012566)   bcmp   原型:extern int bcmp(const void *s1, const void *s2, int n); 用法:#include 功能:比较字符串s1和s2的前n个字节是否相等 说明:如

独步天下的博客 512

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

C语言库函数集合(大全)

C语言库函数集合(大全) 【下载地址】C语言库函数集合大全 这是一份全面且实用的C语言库函数集合,涵盖了C语言标准库中的主要函数,包括输入输出、字符串处理、数学计算、内存管理、时间日期、数据类型转换、文件操作以及错误处理等类别。无论您是C语言初学者还是经验丰富的开发者,这份资源都能帮助您快速查找并掌握常用库函数的使用方法...

gitblog_06744的博客 514

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

C/C++常见库函数(巨详细)

该文章讲解C/C++的一些常用的库函数,超详细!!!

2303_76654613的博客 6404

【C语言】字符串处理函数:strtok和strerror

字符串处理函数:strtok和strerror讲解完毕,希望本章对大家有所帮助。C语言的娴熟运用需要多练勤练,大家快去练习把!!

2501_90303633的博客 1739

【转载】C语言字符串处理函数 - 大集合

void *memccpy (void *dest, const void *src, int c, size_t n); 从src所指向的对象复制n个字符到dest所指向的对象中。如果复制过程中遇到了字符c则停止复制,返回指针指向dest中字符c的下一个位置;否则返回NULL。 void *memcpy (void *dest, const void *src, size_t n); 从s

GengLUT 699

c语言字符集合,C语言、C字符串处理函数集合.doc

C语言、C字符串处理函数集合#include#define ANum1 285#define ANum2 3500//printf(" %d %c \n", (int)'a', (char)123);//字符查看ASCⅡ表//printf(" %d %d \n", (int)"我"[0], (int)"我"[1]);//汉字查看ASCⅡ表//《构造函数部分》// Small_Num 求较小函数 求...

weixin_35135418的博客 189
上一篇: 类型之间的转换
下一篇: 未来五年程序员应当具备的十项技能
General1982
博客等级 码龄19年 14粉丝 20原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值