C语言 将两个字符串连接起来,不用strcat函数

编一个程序,将两个字符串连接起来,不要用strcat函数。

cpp 复制代码
#include <stdio.h>

void my_strcat(char *s1, const char *s2) {
    while (*s1) {
        s1++;
    }
    while (*s2) {
        *s1 = *s2;
        s1++;
        s2++;
    }
    *s1 = '\0';
}

int main() {
    char s1[100] = "Hello, ";
    char s2[] = "World!";
    my_strcat(s1, s2);
    printf("连接后的字符串:%s\n", s1);
    return 0;
}

代码说明:

  • 将两个字符串连接起来,且不使用标准库中的`strcat`函数。

  • 通过遍历第一个字符串找到其结束位置,然后逐个复制第二个字符串的字符到第一个字符串末尾,最后添加结束符`'\0'`。

相关推荐
YIN_尹41 分钟前
【Linux系统编程】进程地址空间
linux·c++
EverestVIP1 小时前
C++中空类通常大小为1的原理
c++
white-persist1 小时前
【vulhub shiro 漏洞复现】vulhub shiro CVE-2016-4437 Shiro反序列化漏洞复现详细分析解释
运维·服务器·网络·python·算法·安全·web安全
网域小星球2 小时前
C++ 从 0 入门(六)|C++ 面试必知:运算符重载、异常处理、动态内存进阶(终极补充)
开发语言·c++·面试
晚会者荣2 小时前
红黑树的插入(有图)
c++
FL16238631292 小时前
基于C#winform部署软前景分割DAViD算法的onnx模型实现前景分割
开发语言·算法·c#
John.Lewis2 小时前
C++进阶(12)附加学习:STL之空间配置器(了解)
开发语言·c++·笔记
独小乐2 小时前
019.ADC转换和子中断|千篇笔记实现嵌入式全栈/裸机篇
linux·c语言·驱动开发·笔记·嵌入式硬件·mcu·arm
汉克老师2 小时前
GESP2023年12月认证C++三级( 第三部分编程题(2、单位转换))
c++·string·单位转换·gesp三级·gesp3级
baizhigangqw2 小时前
启发式算法WebApp实验室:从搜索策略到群体智能的能力进阶
算法·启发式算法·web app