C和指针之字符串编程练习3

1、问题

编写函数类似strcat函数,但是不会溢出目标数组,结果必须是一个正真的字符串

 

 

 

 

 

2、实现代码

 

#include <stdio.h>
#include <string.h>//编写函数类似strcpy函数,但是不会溢出目标数组,结果必须是一个正真的字符串
char *my_strcpy(char *des, char *src, int size)
{strncpy(des, src, size);*(des + size -1) = '\0';return des;
}int main()
{char des[10];int size = sizeof(des);printf("size is %d\n", size);char *src = "daddschenyuchenyu";printf("my_strcpy result is %s\n", my_strcpy(des, src, size));return 0;	
}

 

 

 

 

 

 

 

 

3、运行结果

 

vim my_strcpy.c
gcc -g my_strcpy.c -o my_strcpy
./my_strcpy
size is 10
my_strcpy result is daddschen

 

 

 

 

 

 

 

 

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

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

相关文章

深入Java集合学习系列:ConcurrentHashMap之实现细节

http://www.iteye.com/topic/344876 ConcurrentHashMap是Java 5中支持高并发、高吞吐量的线程安全HashMap实现。在这之前我对ConcurrentHashMap只有一些肤浅的理解&#xff0c;仅知道它采用了多个锁&#xff0c;大概也足够了。但是在经过一次惨痛的面试经历之后&#xff0c;我觉…

基于小波变换的信号降噪处理及仿真研究_信号处理方法推荐--1(转载自用,侵删)...

综述作者&#xff1a;aresmiki链接&#xff1a;https://www.zhihu.com/question/23701194/answer/167005497来源&#xff1a;知乎著作权归作者所有。商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处。非平稳信号处理应该是现在信号处理技术最新的也是最热的研究方…

js温故而知新11(AJAX)——学习廖雪峰的js教程

Asynchronous JavaScript and XML&#xff0c;意思就是用JavaScript执行异步网络请求。 如果仔细观察一个Form的提交&#xff0c;你就会发现&#xff0c;一旦用户点击“Submit”按钮&#xff0c;表单开始提交&#xff0c;浏览器就会刷新页面&#xff0c;然后在新页面里告诉你操…

linux下重启mysql php nginx

# /etc/init.d/mysql restart # /etc/init.d/php-fpm restart # /etc/init.d/nginx restart转载于:https://www.cnblogs.com/yiluxiuxing/p/4140627.html

C和指针之字符串编程练习9(在参数1中查找匹配参数2额任意字符)

1、问题 函数应该在第一个参数中进行查找&#xff0c;并返回匹配第二个参数所包含的字符的数目 2、代码实现 #include <stdio.h> #include <string.h>//函数应该在第一个参数中进行查找&#xff0c;并返回匹配第二个参数所包含的字符的数目 int count_chars(char…

最流行的 .NET 开源项目合集

Github 上有很多优秀的 .NET 开源项目&#xff0c;它们很适合用来学习 .NET 、设计模式和架构。nopCommerce https://github.com/nopSolutions/nopCommercestar: 7k ⭐nopCommerce 是最受欢迎最好的开源电子商务购物车解决方案之一&#xff0c;它基于 ASP.NET Core&#xff…

绿米开关如何重置_三种墙壁开关:绿米、调光、凌动/米家之间的异同

三种墙壁开关&#xff1a;绿米、调光、凌动/米家之间的异同2020-06-18 18:17:179点赞28收藏6评论三种墙壁开关&#xff1a;绿米、调光、凌动/米家之间的异同详细讲解绿米Aqara智能墙壁开关、Yeelight调光开关(86盒版)、Yeelight凌动开关/米家墙壁开关(米家墙壁开关也是Yeelight…

NES模拟器开发-PPU笔记

20151008 占坑,暂时没弄清楚PPU数据如何初始化,绘制顺序等. 转载于:https://www.cnblogs.com/Red_angelX/p/4860497.html

phpRedisAdmin 安装

phpRedisAdmin是一个web端管理redis的工具&#xff0c;每次都是命令行操作&#xff0c;今天安装了下&#xff0c;做个笔记[rootlocalhost linshi]# git clone https://github.com/ErikDubbelboer/phpRedisAdmin.git Initialized empty Git repository in /root/linshi/phpRedis…

GFS(Genetic Fuzzy Systems)—— 基于专家先验规则库和遗传算法相结合的智能体决策算法

文章目录1. FIS 系统&#xff08;Fuzzy Inference Systems&#xff09;1.1 什么是 FIS 系统&#xff1f;1.2 使用 FIS 算法的几个步骤2. GFS 系统&#xff08;GA FIS&#xff09;2.1 什么是基因遗传算法&#xff08;GA&#xff09;?2.2 使用GA算法进化FIS规则库在大规模的多智…

3-unit1 IPv6网络的管理

##########IPv6网络的管理#############学习目标了解IPv6管理IPv6##)IPv6简介Internet Protocol Version 6IPv6是IETF&#xff08;和互联网工程任务组&#xff09;设计的用与替代现行版本IP协议的下一代IP协议。IPv6采用128位2进制数码表示##IPv6示意图:##IPv6表示方式为方便操…

C和指针之字符串编程练习8实现char *my_strnchr(char const *str, int ch, int which)

1、问题 编写函数类似strchr函数,但是它有3个参数,第三个参数是1, 这个函数的功能就和strchr完全一样, 如果第三个参数是2,这个函数就返回一个指向ch字符在str字符串第二次出现的位置的指针,以此类推 2、代码实现 1 #include <stdio.h>2 #include <string.h>3…

Xamarin效果第一篇之时间轴

一直都想找个时间玩玩移动端,中间也去各种的调研快速的方式去开发;过程中还是太浮躁木有沉下心去学习;好早尝试过Flutter,二点让我不爽:1、配置环境好费劲(VS把我惯坏了)&#xff1b;2、套娃的写法真是恶心;来看看酸爽不:因为一直都是C#开发,所以这次再次摸索Xamarin去开发;前面…

bootstrap tabale 点击_jquery+bootstrap实现tab切换, 每次切换时都请求数据, 点击提交分别向不同的地址提交数据...

今天一个朋友叫帮做一个tab切换, 每一个tab内容区域都是从后台取出的数据, 这些数据要用表格的形式显示处理, 并且表格的内容区域可以修改, 如下所示:例子查看请演示查看.截图如图所示:实现步骤:几个需要注意的点:1. tab部分加一个data-id, 当中的id与下面要显示的具体内容的ta…

AJAX+json+jquery实现预加载瀑布流布局

AJAXjsonjquery实现预加载瀑布流布局转载于:https://www.cnblogs.com/zhujiabin/p/4860954.html

Lync 小技巧-42-动态-IP-统一沟通-环境-IP-变更后-操作

1. 查看-你的-公网IPhttp://www.ip138.com/2. 修改-你的-公网A记录https://www.godaddy.com/3. 修改-你的-拓朴-For-边缘服务器3.1.远程-前端服务器3.2.下载-拓朴3.3.选择-边缘服务器3.4.选择-边缘服务器3.5.修改-公网IP116.230.255.783.5.发布-拓朴3.6.导出-拓朴3.7.复制-拓朴…

C和指针之字符串memcpy、memmove、memset使用总结

1、介绍memcpy、memmove、memset 1) void *memcpy(void *dest, const void *src, size_t n); 从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中 2) void *memmove( void* dest, const void* src, size_t count ); 从src拷贝count个字节…

Blazor University (1)介绍 - 什么是 Blazor?

原文链接&#xff1a;https://blazor-university.com/overview/what-is-blazor/什么是 Blazor&#xff1f;Blazor 是一个单页应用程序开发框架。Blazor 这个名称是单词 Browser 和 Razor&#xff08;.NET HTML 视图生成引擎&#xff09;的组合/变异。这意味着 Blazor 不必在服务…

Git在版本2.13中继续改进了安全性和UI

Git的最新版本做了很多改进&#xff0c;旨在改进其用户界面&#xff0c;同时也修复了两个重要的漏洞。\\众所周知&#xff0c;Git用于唯一识别对象的SHA-1哈希算法最近被证明容易受到碰撞攻击。虽然Git团队准备过渡到一个新的更安全的散列算法&#xff0c;但它们已经实现了一种…

Mysql日期和时间函数

转载自:http://fanqiang.chinaunix.net/a2/b1/20010705/150000802.html 对于每个类型拥有的值范围以及并且指定日期何时间值的有效格式的描述见7.3.6 日期和时间类型。 这里是一个使用日期函数的例子。下面的查询选择了所有记录&#xff0c;其date_col的值是在最后30天以内&am…