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'`。

相关推荐
leiming63 小时前
C++ vector容器
开发语言·c++·算法
SystickInt3 小时前
C语言 strcpy和memcpy 异同/区别
c语言·开发语言
CS Beginner4 小时前
【C语言】windows下编译mingw版本的glew库
c语言·开发语言·windows
JAY_LIN——84 小时前
指针-数组
c语言·排序算法
Xの哲學4 小时前
Linux流量控制: 内核队列的深度剖析
linux·服务器·算法·架构·边缘计算
yaoh.wang5 小时前
力扣(LeetCode) 88: 合并两个有序数组 - 解法思路
python·程序人生·算法·leetcode·面试·职场和发展·双指针
进阶的猪5 小时前
STM32 使用HAL库SPI读写FLASH(W25Q128JV)数据 Q&A
c语言·stm32·单片机
apocelipes5 小时前
从源码角度解析C++20新特性如何简化线程超时取消
c++·性能优化·golang·并发·c++20·linux编程
LYFlied5 小时前
【每日算法】 LeetCode 56. 合并区间
前端·算法·leetcode·面试·职场和发展
ozyzo5 小时前
求1~n的累加和
c++