C++学习日记——字符串拷贝、拼接、比较函数

发布于:2022-12-21 ⋅ 阅读:(532) ⋅ 点赞:(0)

学习目标:

学习掌握C++之字符串拷贝、拼接、比较函数
在这里插入图片描述


学习内容:

字符串拷贝、拼接、比较strcpy、strcat、strcmp
需要包含cstring文件
😊😊😊

strlen:获取字符串长度,返回字符串长度size_t类型
strcpy:拷贝字符串,将目标字符串拷贝到源字符串中,进行覆盖,而不是拼接
strncpy:选择拷贝n个字符,将目标字符串拷贝到源字符串中,从首地址开始覆盖,若后面部分没有覆盖到,将保留
strcat:字符串拼接,将后面的目标字符串拼接到源字符串中,但不允许超出原目标的内存空间
strncat:选择拼接n个字符,字符串拼接,将后面的目标字符串拼接到源字符串中,但不允许超出原目标的内存空间
strcmp:字符串比较,按ascii码逐位比较,返回值相等为0,大于为>0,小于为<0(不同操作系统肯不一样,可能返回ascii码差值)
strncmp:字符串前n个字符比较,其他与strcmp无异

😊😊😊


学习代码:

实例学习:

#include<iostream>
#include<cstring>
#pragma warning(disable:4996)
using namespace std;

int main() {
	//strlen
	char arr[20]="helloworld";
	size_t a = strlen(arr);
	cout << a << endl;
	cout << arr << endl;
	//strcpy
	char* p1 = strcpy(arr, "iishi");
	cout << p1 << endl;
	cout << arr << endl;
	//strncpy
	char* p2 = strncpy(arr, "nihao", 2);
	cout << p2 << endl;//只覆盖前面两个字符,后面并未改变
	cout << arr << endl;
	//strcat
	char* p3 = strcat(arr, "!");
	cout << p3 << endl;
	//strncat
	char* p4 = strncat(arr, "!23", 2);//拼接!2在后面
	cout << p4 << endl;

	//字符串比较
	const char* p5 = "hello";
	const char* p6 = "world";
	int num=strcmp(p5, p6);//按顺序比较ascii码大小,相等返回0.大于返回正数,小于返回负数
	cout << num << endl;

	//strncmp 比较前n个字符
	int c=strncmp("add 10 10", "add", 3);
	cout << c << endl;

	//stricmp 忽略大小写比较
	int cc = stricmp("hello", "HELLO");
	cout << cc << endl;

	//strincmp  比较前n位,忽略大小写


	return 0;
}

代码运行:

在这里插入图片描述

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到