实现字符串拷贝函数时,一定要分清楚源头的字符串和目的字符串,两者的位置不同,首先是方法1:

#include<stdio.h>
#include<assert.h>
void my_strcpy(char* arr1,const char* arr2)//源头字符串的内容不发生改变
{
    assert(arr1 != NULL);
    assert(arr2 != NULL);//确保指针的有效性
    while (*arr2)//当*arr2='\0'时停止循环
    {
        *arr1 = *arr2;
        arr1++;
        arr2++;
    }
    *arr1 = *arr2;//将最后的'\0'拷贝到目的字符串中
}
int main()
{
    char arr1[] = "abcdef";
    char arr2[] = "hello";
    my_strcpy(arr1,arr2);
    printf("%s ", arr1);
    }

方法2:简化代码

#include<stdio.h>
#include<assert.h>
void my_strcpy(char* arr1,const char* arr2)//源头字符串的内容不发生改变
{
    assert(arr1 != NULL);
    assert(arr2 != NULL);//确保指针的有效性
    while (*arr1++=*arr2++)//简化代码,直到拷贝到'\0'才停止
    {
    ;
    }
}
int main()
{
    char arr1[] = "abcdef";
    char arr2[] = "hello";
    my_strcpy(arr1,arr2);
    printf("%s ", arr1);
    }

字符串拷贝函数Strcpy的实现相关推荐

  1. 函数返回字符串指针C语言,C语言:利用指针和函数调用编写字符串拷贝函数strcpy...

    #include #include/*断言的头文件*/ char *my_strcpy(char *dest,const char *src) /*传参,把src依次传给dest,指针数组,每一个都是 ...

  2. 字符串拷贝函数:strcpy的详解及模拟实现

    字符串拷贝函数:strcpy的详解及模拟实现!!! 对于字符串拷贝函数,之前在学习字符串时候,就已经学习过,但那只是片面的学习了一下,并没有经过系统的分析!只是大概的学习了一下!在关键的地方有时候还不 ...

  3. 【C语言】字符串拷贝函数(strcpy)与内存拷贝函数的不同及内存拷贝函数(memcpy)的模拟实现

    目录 字符串拷贝函数(strcpy) 函数原型 应用实例 我们将一个存放"abcdefg"的字符数组arr的内容拷贝到字符数组brr之中. 缺点 内存拷贝函数(memcpy) 函数 ...

  4. 字符串拷贝函数memcpy()、strncpy()和snprintf()性能之比较

    问题: 函数memcpy(dest, src, sizeof(dest)).strncpy(dest, src, sizeof(dest))和snprintf(dest, sizeof(dest), ...

  5. 【C 语言】字符串拷贝 ( 函数形参使用推荐方法 | 凡是涉及 修改指针指向 的操作一律创建新的 指针变量 执行 | 引入 辅助 局部 指针变量 )

    文章目录 一.函数形参使用推荐方法 二.完整代码示例 一.函数形参使用推荐方法 在函数中 , 形参 中的 指针变量 , 不建议直接使用 ; 推荐 在 函数中 , 定义 局部 指针变量 , 接收 形参中 ...

  6. 字符串拷贝函数strdup()

    char *strdup(const char *s); 注: strdup()函数是c语言中常用的一种字符串拷贝库函数,一般和free()函数成对出现. 字符串拷贝函数strdup()内部实现如下: ...

  7. 不调用C++/C字符串库函数,实现字符串复制函数strcpy

    已知strcpy的函数原型:char *strcpy(char *strDest,const char *strSrc),其中strDest是目的字符串,strSrc是源字符串.不调用C++/C的字符 ...

  8. 字符串复制函数strcpy的实现算法

    1,字符串复制,需要考虑三种情况: 目的字符串未被赋值,本身是个空串,源字符串存在. 目的字符串长度m大于或等于源字符串长度n,此时复制时,源字符串代替目的字符串前n个字符,目的字符串后m-n个字符扔 ...

  9. c语言 字符串拷贝函数作用,C语言不使用strcpy函数如何实现字符串复制功能

    Ⅰ )字符串复制函数 字符串复制是字符串操作中比较常用的操作之一.C语言库函数中提供的字符串复制函数是:strcpy函数.该函数的功能为:把源字符数组中的字符串复制到目的字符数组中,字符串结束标志&q ...

最新文章

  1. AAAI2022最新「关系数据因果推理」报告,181页PPT阐述因果推理在网络数据中研究进展...
  2. [机器学习笔记]Note15--大规模机器学习
  3. win10浏览器闪退_Win10系统Edge浏览器闪退问题的解决方法
  4. centos7 文本编辑 不能移动光标_【200905】Linux系统的使用基础(CentOS 7)
  5. 爬了知乎 200 万数据,图说程序员都喜欢去哪儿工作
  6. c++时间片轮转rr进程调度算法_「学习笔记」时间片轮转(RR)调度算法(详解版)...
  7. django开发_七牛云图片管理
  8. mac/linux终端光标的快捷键操作
  9. Vue + Canvas 实现头像截图上传功能
  10. Python Apex YOLO V5 6.2 目标检测 全过程记录
  11. Excel如何批量设置英语句首大写
  12. Kubernetes-Host网络模式,指定Pod 物理机IP
  13. 迁移学习基础知识整理
  14. IE不能上网浏览的常见原因和解决方法
  15. GAN实战——TinyMind书法字体生成练习赛开始报名拉!
  16. PG据库备份与恢复实验 (PITR)
  17. 聚划算十周年被赋予新使命: 满足消费者新需求 提升供给侧效率
  18. 爬虫爬取 淘宝联盟,淘宝客阿里妈妈 订单,细节
  19. STOP 0x00000051(0xC0000008,0x00000000,0xE101B008,0x108FBC4)解决方法
  20. UG二次开发读取尺寸值公差分析

热门文章

  1. dir-816虚拟服务器,D-Link DIR816双频无线路由器的上网设置教程
  2. Windows重装win8,Mac安装win7双系统
  3. mysql数据库统计各个年龄段男女人数
  4. NVIDIA显卡如何设置多显卡方案
  5. JQ 全选后获取选中的值_【原神料理攻略】最全特殊料理展示与食谱获取
  6. 自制虚拟键盘Demo
  7. 红帽杯2021 Misc
  8. 机器人专用符文_一Q一个嘤嘤怪!启封符文机器人黑科技
  9. react native 中设置Image/ImageBackground圆角无效的解决方法
  10. ICME 2023 | PACC: RTC 下基于用户感知的拥塞控制