当前位置: 首页 > article >正文

C++ strcpy和strcat讲解

目录

一. strcpy

代码演示:

二.strcat

代码演示:


一. strcpy

使⽤字符数组可以存放字符串,但是字符数组能否直接赋值呢?
⽐如:
char arr1[] = "abcdef";
char arr2[20] = {0};
arr2 = arr1;//这样这节赋值可以吗? 
就⾏整型数组中,我们说的过⼀样,这⾥也是不⾏的。那么如何将arr1中的字符串,拷⻉到arr2中呢?
其实C/C++中有⼀个库函数叫strcpy,可以完成。

char * strcpy ( char * destination, const char * source );
//destination - 是⽬标空间的地址 
//source - 是源头空间的地址 
//需要的头⽂件 <cstring>

代码演示:

#include <cstdio>
#include <cstring>
1
2int main()
{
 char arr1[] = "abcdef";
 char arr2[20] = {0};
 strcpy(arr2, arr1);
 printf("%s\n", arr2); 
 return 0;
}

二.strcat

有时候我们需要在⼀个字符的末尾再追加⼀个字符串,那字符数组能直接追加吗?⽐如: char arr1[20] = "hello "; char arr2[] = "world"; arr1 += arr2;//这样也是不⾏的 1 2 3 4 那怎么办呢?C/C++中有⼀个库函数叫strcat,可以完成。

char * strcat ( char * destination, const char * source );

//destination - 是⽬标空间的地址

//source - 是源头空间的地址

//需要的头⽂件<cstring>

代码演示:

#include <cstdio>
#include <cstring>
1
2int main()
{
 char arr1[20] = "hello ";
 char arr2[] = "world";
 strcat(arr1, arr2);
 printf("%s\n", arr1); 
 return 0;
}

除了上⾯的两个字符串相关函数外,其实C/C++中还提供了⼀些其他的函数:

https://legacy.cplusplus.com/reference/cstring/


http://www.kler.cn/a/528823.html

相关文章:

  • JVM-运行时数据区
  • tf.Keras (tf-1.15)使用记录3-model.compile方法
  • 手写防抖函数、手写节流函数
  • 本地部署DeepSeek开源多模态大模型Janus-Pro-7B实操
  • 药店药品销售管理系统的设计与实现
  • Spring的AOP思想中事物管理注意点
  • NeetCode刷题第19天(2025.1.31)
  • 二、CSS笔记
  • 掌握API和控制点(从Java到JNI接口)_35 JNI开发与NDK 03
  • Hot100之子串
  • [AI]安装open-webui时报部分安装失败
  • C++:虚函数与多态性习题
  • [ACTF2020 新生赛]Exec 1
  • 记忆力训练day11
  • FFmpeg工具使用基础
  • 844.比较含退格的字符串
  • 【大坑】使用element-ui弹窗$confirm自动弹出
  • OpenAI:人工智能领域的先锋力量
  • 【数据采集】案例02:基于Selenium采集豆瓣电影Top250的详细数据
  • Heptagon record 数据结构
  • SAP物料分类账相关后台配置、准备工作
  • 【token】【1】零基础token pipline快速实战
  • AI生成产品原型与设计稿:我的工具使用心得与推荐
  • Vue.js `Suspense` 和异步组件加载
  • 当WebGIS遇到智慧文旅-以长沙市不绕路旅游攻略为例
  • linux 函数 sem_init () 信号量、sem_destroy()