当前位置:蜗牛素材网>综合资讯>科技>正文

c语言怎么把字符串分开?C语言字符串拷贝的几种方式

人气:274 ℃/2023-10-09 12:05:20

总体概述:

在实际项目中对字符串操作函数用得很多,这一篇,我们介绍几个字符串拷贝的函数,并编写代码示例,经常用到的函数有strcpy、strncpy,memcpy。

函数语法:

strcpy函数语法:char *strcpy(char *dest, const char *src);

strncpy函数语法:char *strncpy(char *dest, const char *src, size_t n);

memcpy函数语法:void *memcpy(void *dest, const void *src, size_t n);

函数作用:

strcpy函数:将src指向的字符串(包括结束的空字节('\0'))复制到由dest指向的缓冲区。

strncpy函数:将n个字节从src指向的字符串复制到由dest指向的缓冲区。

memcpy函数:将n个字节从内存区域src复制到内存区域dest。

参数介绍:

strcpy函数参数介绍:

  • 输出参数:dest => 存储字符串的缓存。
  • 输入参数:src => 指向要拷贝的字符串。
  • 返回值:返回一个指向目标字符串dest的指针。

strncpy函数参数介绍:

  • 输出参数:dest => 存储字符串的缓存。
  • 输入参数:src => 指向要拷贝的字符串。
  • 输入参数:n => 要拷贝的字符串长度。
  • 返回值:返回一个指向目标字符串dest的指针。

memcpy函数参数介绍:

  • 输出参数:dest => 目的内存区域。
  • 输入参数:src => 源内存区域。
  • 输入参数:n => 要拷贝的内存长度。
  • 返回值:返回一个指向目的内存dest的指针。

代码示例:

#include <stdio.h>#include <string.h>int main(int argc, char **argv){ const char *str = "string copy demo"; char dest1[32], dest2[32], dest3[32]; size_t len = strlen(str); strcpy(dest1, str); strncpy(dest2, str, len); dest2[len] = '\0'; memcpy(dest3, str, len); dest3[len] = '\0'; printf("dest1: %s\n", dest1); printf("dest2: %s\n", dest2); printf("dest3: %s\n", dest3); return 0;}

使用方法:

$ mkdir ~/clanguage && cd ~/clanguage$ touch string_copy.c 注:创建并拷贝代码到string_copy.c,保存退出。$ gcc -o string_copy string_copy.c$ ./string_copy

运行效果:

运行效果图

点赞、收藏 关注获取更多精彩内容!

注:鉴于作者能力有限,文中错误与未尽事宜在所难免,恳请读者批评指正。

代码示例图

搜索更多有关“c语言怎么把字符串分开?C语言字符串拷贝的几种方式”的信息 [百度搜索] [SoGou搜索] [头条搜索] [360搜索]
本网站部分内容、图文来自于网络,如有侵犯您的合法权益,请及时与我们联系,我们将第一时间安排核实及删除!
CopyRight © 2008-2024 蜗牛素材网 All Rights Reserved. 手机版