首页 > 编程语言 >C++字符串操作函数笔记#

C++字符串操作函数笔记#

时间:2024-01-10 10:55:51浏览次数:38  
标签:const dest str2 str1 笔记 char ++ C++ 字符串

1. strcpy()

从strSrc地址开始且含有'\0'结束符的字符串复制到strDest开始的地址空间中,返回值类型为char*

	char *strcpy( char *strDest, const char *strSrc )
	{
		assert( (strDest != NUL) && (strSrc != NULL) );
		char *address = strDest;
		while( (*strDest++ = *strSrc++) != '\0');
		return address;
	}

2. strlen()

计算给定字符串的长度

	int strlen( const char *str)
	{
		assert( str != NULL );
		int len;
		while ((*str++) != '\0')
		{
			len++;
		}
		return len;
	}

3. strcat()

把src所指字符串添加到dest结尾处

char *strcat(char *dest, const char *src)
{
	assert(dest && str);
	char *ret = dest;
	while (*dest)
	{
		dest++;
	}
	while (*dest++ = *src++);
	return ret;
}

4. strcmp()

比较两个字符串,假如有str1和str2
若 str1==str2,返回0
若 str1 < str2,返回负数
若 str1 > str2, 返回正数

int strcmp(const char *str1, const char *str2)
{
	assert(str1 && str2);
	while (*str1 && *str2 && (*str1 == *str2))
	{
		str1++;
		str2++;
	}
	return *str1 - *str2;
}

标签:const,dest,str2,str1,笔记,char,++,C++,字符串
From: https://www.cnblogs.com/jev-0987/p/17956048

相关文章

  • c++内存打印函数
    voidPrintBuffer(void*pBuff,unsignedintnLen){if(NULL==pBuff||0==nLen){return;}constintnBytePerLine=16;unsignedchar*p=(unsignedchar*)pBuff;charszHex[3*nBytePerLine+1]={0};printf("--......
  • 【学习笔记】KMP 相关算法
    KMP单模式串匹配,比较平凡所以不说了,比较有借鉴意义的每次拓展一位和\(nxt\)数组能极大减少不合法的匹配,时间复杂度\(O(|s|+|t|)\)。引出一个定义,记满足\(s[1,i]=s[|s|-i+1,|s|]\)的前缀为字符串\(s\)的\(\mathrm{border}\),所有的\(\mathrm{border}\)构成\(\mathrm{Bo......
  • mit6.828 - lab5笔记(上)
    文件系统结构unix的文件系统相关知识unix将可用的磁盘空间划分为两种主要类型的区域:inode区域和数据区域。unix为每个文件分配一个inode,其中保存文件的关键元数据,如文件的stat属性和指向文件数据块的指针。数据区域中的空间会被分成大小相同的数据块(就像内存管理中的分页)。数......
  • Linux服务Systemd笔记
    Systemd简介从CentOS7.x以后,RedHat系列放弃了一直使用的init启动脚本的方式管理服务,改用systemd这个启动服务管理机制。该机制的好处有:平行处理服务,加速开机流程,systemd可以让所有的服务同时启动。服务依赖性自我检查。对服务依据功能进行分类,将多个服务集合成一个群组。......
  • Internlm-chat-7b大模型笔记1
    首先第一次做作业只对着文档来操作,但是发现出现了很多错误因为每段代码都有先后顺序,而且一些是终端一些是Python的代码然后遇到第二个困难是配置ssh的时候因为算力没有了重新进入开发机,但是密钥发生改变,出现以下报错@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@    WARNIN......
  • python第三节:Str字符串类型(1)
    第二节:Str字符串类型python中处理文本数据是用str类型,不像其他语言区分字符和字符串,统一使用str类型。str在创建后是不可变的。在python中字符类型相当于长度是1的字符串类型。以下三种方式包裹的字符都算作字符串:单引号:'允许包含有"双"引号'双引号:"允许嵌入'单'引号"三重......
  • openGauss学习笔记-191 openGauss 数据库运维-常见故障定位案例-出现Error:No space l
    openGauss学习笔记-191openGauss数据库运维-常见故障定位案例-出现Error:Nospaceleftondevice提示191.1出现“Error:Nospaceleftondevice”提示191.1.1问题现象在数据库使用过程中,出现如下错误提示。Error:Nospaceleftondevice191.1.2原因分析磁盘空间不足......
  • elasticsearch使用笔记
    查询POST/GEThttp://192.168.0.1:9200/waf-20*/_search{"query":{"bool":{"must":[{"match":{"src_ip":"192.168.128.190"}},{"range":{&quo......
  • 刷题笔记——栈(C++)
    LCR148.验证图书取出顺序-力扣(LeetCode)现在图书馆有一堆图书需要放入书架,并且图书馆的书架是一种特殊的数据结构,只能按照 一定 的顺序 放入 和 拿取 书籍。给定一个表示图书放入顺序的整数序列 putIn,请判断序列 takeOut 是否为按照正确的顺序拿取书籍的操作序列。你可......
  • openGauss学习笔记-189 openGauss 数据库运维-常见故障定位案例-TPCC-WAL-内存
    openGauss学习笔记-189openGauss数据库运维-常见故障定位案例-TPCC-WAL-内存189.1TPCC运行时,注入磁盘满故障,TPCC卡住的问题189.1.1问题现象TPCC运行时,注入磁盘满故障,TPCC卡住,故障消除后,TPCC自动续跑。189.1.2原因分析数据库本身机制,在性能日志(gs_profile)所在磁盘满时,导致......