c语言:模拟实现各种字符串函数(2)

news2024/11/25 3:01:48

strncpy函数:

功能:拷贝指定长度的字符串a到字符串b中 

代码模拟实现: 

//strncpy
char* my_strncpy(char* dest, char* str,size_t num)
{
	char* ret = dest;
	assert(dest && str);//断言,如果其中有一个为空指针,停止运行,保护程序
		while ((num)&&(*dest=*str))
		{
				dest++;
				str++;
				num--;
		}
	return ret;
}
int main()
{
	char arr1[20] = { 0 };//被拷入数组
	char arr2[] = "abcdef";//拷入数组
	my_strncpy(arr1, arr2,3);
	printf("%s\n", arr1);
	return 0;
}

效果展示:

strncat函数:

功能:拷贝指定长度的字符串a代替b中同样位置的字符串,然后接着打印剩下b的内容,多余的舍去。

代码模拟实现: 

char* my_strncat(char* dest, const char* src,size_t num)
{
    char* ret = dest;
    assert(dest && src);//断言
    //找到目标空间,也就是第一个字符串的结尾的\0
    while ((num)&&*dest)
    {
        num--;
        dest++;
    }
    //拷贝
    while (*dest = *src)
    {
        dest++;
        src++;
    }
    return ret;
}
int main()
{
    char arr1[20] = "hello ";
    char arr2[] = "world";
    my_strncat(arr1, arr2,6);
    printf("%s\n", arr1);
    return 0;
}

效果展示:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1255622.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

带你用uniapp从零开发一个仿小米商场_6. 配置uniapp项目底部导航栏tabbar

uniapp底部tabbar介绍 在uni-app中,底部tabbar是一种常见的导航方式,它可以让用户在应用的不同页面之间进行切换。通过tabBar配置项,开发者可以指定一级导航栏和tab切换时显示的对应页。 在底部tabbar中,每个tab都有一个页面路径…

51单片机蜂鸣器发出悦耳的声音

51单片机蜂鸣器发出悦耳的声音 1.概述 这篇文章介绍单片机控制蜂鸣器入门小实验,通过该实验掌握蜂鸣器发声的原理,控制声音发出我们想听的音乐。 2.蜂鸣器发声 2.1.硬件原理 1.蜂鸣器正极接单片机20号引脚VCC,负极接19号引脚P1.7 2.20MH…

《当你学会独处》读后感

其实在上周就读完了这本书,这本书挺适合断断续续在上班通勤路上看,从任何一章节打开都可以,可以不顾前面情节和内容,新入口处都是精彩的开始。 受疫情影响,居住小区也开始封闭。作为个体,最好的行动就是跟政…

P15 C++ 枚举

The ChenPi 前言 今天我们要讲的是 C 中的枚举。 enum 是 enumeration 的缩写,基本上可以说,它就是一个数值集合。如果你想要给枚举一个更实际的定义,它们是给一个值命名的一种方法。 所以我们不用一堆叫做 A、B、C 的整数。我们可以有一个…

【MATLAB】VMD分解+FFT+HHT组合算法

有意向获取代码,请转文末观看代码获取方式~也可转原文链接获取~ 1 基本定义 VMD(Variational Mode Decomposition)是一种信号分解方法,基于HHT(Hilbert-Huang Transform,希尔伯特-黄变换)。HH…

理论与实践相结合之白话文讲解计算机网络是什么

什么是计算机网络? 下图就是计算机网络,所有能联网的设备连接在一起就组成了互联网 计算机网络有什么用? 计算机网络的作用就是用于设备之间传输数据,举个例,我们用手机或电脑可以访问“百度”,是因为我们…

Vue - Vue配置proxy代理,开发、测试、生产环境

1、新建三个环境的配置文件 在src同级目录也就是根目录下新建文件:.env.development(开发环境)、.env.test(测试环境)、.env.production文件(生产环境) 2、三个环境的配置文件 开发环境 .env…

【【Linux开发环境搭建与软件的安装】】

Linux开发环境搭建与软件的安装 下面我们来讲述 Ubuntu 系统搭建 tftp 服务器 TFTP 需要一个文件夹来存放文件,我们在根目录下新建一个/tftpboot 目录做为 TFTP 文件存储目录,之所以使用该目录是因为后面使用的 Petalinux 工具默认使用该目录&#xff0…

GCPS—20型工程钻机的设计自动摊铺机的设计机械设计

wx供重浩:创享日记 对话框发送:摊铺机 获取完整论文报告工程源文件 摊铺机是一种复合式多功能摊铺机,为适应我国深基础和连续墙以及水利、纺织的发展与需要,结合大口径摊铺机灌注桩和地下连续墙施工的特点,为解决在复…

【方块消消乐】方块消除游戏-微信小程序开发流程详解

有做过俄罗斯方块游戏小程序的经验,这次有做了一个消灭方块的游戏,实现过程很顺利,游戏看着和之前做的俄罗斯方块游戏很像,这里调整了玩法,试玩感觉还可以,接下来给大家讲一讲消灭方块游戏开发过程。 俄罗斯…

多元逻辑回归模型的概念、模型检验以及应用

多元逻辑回归是逻辑回归的一种扩展,用于处理多类别分类问题。在二元逻辑回归中,我们通过一个逻辑函数(也称为S形函数)将输入特征映射到一个概率值,用于预测两个类别中一个的概率。而在多元逻辑回归中,我们面…

How to show square root of absolute of x isn‘t Lipschitz function

https://math.stackexchange.com/questions/667346/sqrtx-isnt-lipschitz-function https://math.stackexchange.com/questions/1375829/how-to-show-square-root-of-absolute-of-x-sqrtx-is-not-lipschitz-continu?noredirect1

新手如何购买保险,保险投资基础入门

一、教程描述 本套保险教程,大小2.63G,共有11个文件。 二、教程目录 第01课 保险到底有什么用.mp4 第02课 已有社保还需要商业保险吗.mp4 第03课 你必须要懂的保险基础知识.mp4 第04课 关于重疾你必须要知道的几件事情.mp4 第05课 家庭重疾险如何…

掌握文件夹重命名技巧:字母大小写批量转换的实用操作

在这个数字化时代,经常要与各种文件和文件夹打交道。有时候,为了提高工作效率或整理文件,要对文件夹名称进行修改。其中,字母大小写的转换是一个常见的需求。例如,将所有文件夹名称中的大写字母转换为小写字母&#xf…

4.一维数组——用数组处理求Fibonacci数列前20项

文章目录 前言一、题目描述 二、题目分析 三、解题 程序运行代码 四、结果显示 前言 本系列为一维数组编程题,点滴成长,一起逆袭。 一、题目描述 用数组处理求Fibonacci数列前20项 二、题目分析 前两项:f[20]{1,1} 后18项:for(…

企业文档文件管理软件推荐:提升管理效率与数据安全性

Zoho WorkDrive企业网盘是一种高效的文件管理工具,它不仅可以为组织搭建统一、高效、安全、智能的内容管理体系,还能够提供大规模支撑、海量数据处理、非结构化数据治理、智能挖掘与洞察等服务能力。通过这些服务,企业可以更好地管理和利用其…

岁月随笔-穿拖鞋的汉子

时间如白驹过隙般,转眼间2023年也只剩下最后的40天。汉子我拿出年初自己定的目标,立下的Flag,恍恍惚若昨天发生,不禁让人感慨万千。 其实最近自己遇到了很大的困惑,也导致了断更了一个月。自己逐渐摸不清自己的定位啦…

软件测试面试题之如何进行项目介绍

邯郸网上银行系统旨在为企业搭建安全便捷的账户管理,资金汇化及投资服务通道,提升企业财富与价值增值它主要包含首页、我的账户、信用卡、邮储业务、投资理财、转账汇款、个人贷款等模块。 个人贷款一般有抵押贷款,和信用贷等,房…

SpringBoot事务处理

一、事务回顾 回顾地址: 深入理解数据库事务(超详细)_数据库事务操作_Maiko Star的博客-CSDN博客 事务: 是一组操作的集合,是一个不可分割的工作单位,这些操作要么同时成功,要么同时失败 事…

什么是 dropblock

大家好啊,我是董董灿。 之前介绍过 dropout 算法,它在训练神经网络中,可以随机丢弃神经元,是一种防止网络过拟合的方法。 但是在卷积神经网络中,dropout 的表现却不是很好,于是研究人员又搞了一个“结构化…