strlcpy()函数是strcpy()函数的第三版,在strnpy()(第二版)的基础上增加了对源字符串的判断并且字符拷贝完成后增加’\0’,下面贴上linux实现方式:

函数定义如下:

size_t strlcpy(char *dest, const char *src, size_t size);

函数实现如下:

size_t Test_strlcpy(char *dest, const char *src, size_t size)
{size_t ret = strlen(src);if (size) {//这句判断大赞,起码有效防止源字符串的越界问题size_t len = (ret >= size) ? size - 1 : ret;memcpy(dest, src, len);dest[len] = '\0';}return ret;
}

C语言 strlcpy函数实现相关推荐

  1. C语言中函数strcpy ,strncpy ,strlcpy的用法

    C语言中函数strcpy ,strncpy ,strlcpy的用法 http://hi.baidu.com/qi_hao/blog/item/043ef21c6e26c58286d6b678.html ...

  2. C语言——字符串函数

    C语言--字符串函数 宗旨:技术的学习是有限的,分享的精神是无限的. 常用字符串操作函数的实现:注释部分你们注意一下,我没加/,加了/就看不到注释了. ************************ ...

  3. 写的函数符号表里没有_你有没有想过,C语言 main 函数到底为啥这么写?

    但凡是学过C语言的人,都知道要先写main函数,然而很多时候我们看到的main函数却各有差异,这究竟是为啥?哪种是对的呢?今天我们就来聊聊main函数. 那么main函数一共有多少个版本呢? 1.ma ...

  4. R语言str_trim函数去除字符串中头部和尾部的空格

    R语言str_trim函数去除字符串中头部和尾部的空格 目录 R语言str_trim函数去除字符串中头部和尾部的空格 #导入包和库 #仿

  5. R语言sqrt函数为数值开平方根实战

    R语言sqrt函数为数值开平方根实战 目录 R语言sqrt函数为数值开平方根实战 #基本语法 #sqrt函数开平方根

  6. R语言数学函数:abs绝对值、sqrt平方根、ceiling向上近似整数、floor向下近似整数、trunc去除小数部分、round近似到指定小数位、signif近似到有效数字、三角函数、指数、对数

    R语言数学函数:abs绝对值.sqrt平方根.ceiling向上近似整数.floor向下近似整数.trunc去除小数部分.round近似到指定小数位.signif近似到有效数字.三角函数.指数.对数 ...

  7. R语言sd函数计算数值标准差实战(Standard Deviation)

    R语言sd函数计算数值标准差实战(Standard Deviation) 目录 R语言sd函数计算数值标准差实战(Standard Deviation) #基本语法 #sd

  8. R语言optimize函数一维优化实战

    R语言optimize函数一维优化实战 目录 R语言optimize函数一维优化实战 #基础语法 #优化用户自定义的函数

  9. R语言rev函数对数据对象(向量、dataframe通过行或者列)反序实战

    R语言rev函数对数据对象(向量.dataframe通过行或者列)反序实战 目录 R语言rev函数对数据对象(向量.dataframe通过行或者列)反序实战

最新文章

  1. java B2B2C 源码 多级分销springmvc mybatis多租户电子商城系统--配置中心服务化和高可用...
  2. python使用curses库获取控制台的键盘输入(如上下左右)
  3. Android之Launcher分析和修改3——Launcher启动和初始化
  4. python权威指南 pdf_Ansible权威指南pdf txt mobi下载及读书笔记
  5. 【Alpha】Scrum Meeting 2
  6. Discuz代码片段
  7. VAX/VMS虚拟内存系统
  8. python字体和图片合成
  9. airtest web 录制滑块_AirTest学习四,录制Web测试脚本
  10. FPGA零基础学习:按键控制LED
  11. 利用python制作动态二维码
  12. 7-31 求圆周长和面积
  13. 任正非与美国思想家的咖啡对话全文
  14. Simulink选择器模块(Selector)
  15. Python编程快速上手让繁琐工作自动化中文高清完整版PDF带书签
  16. 视频编码:H.264编码
  17. 视易服务器系统装,windows2000视易星云点歌数据服务器安装方法和步骤.docx
  18. 【C++】类的6个默认成员函数详解
  19. STM32工程模板文件夹
  20. Vue 3 迁移策略笔记—— 第31节:scoped styles 的变化

热门文章

  1. 耗费 7.5 亿做的“垃圾”,被 3 个程序员爸爸重写并开源了
  2. 云计算监控—Prometheus监控系统(文末赠书)
  3. P3-weixin-2.0.1 版本发布,JAVA微信插件框架
  4. MethodInvokingJobDetailFactoryBean的并发问题
  5. 总结PLSQL的快捷键以及使用技巧
  6. SQL性能优化整合持续更新
  7. Falcon 快速开始
  8. introduce of servlet and filter
  9. OSChina 周日乱弹 —— 昨天夜生活很丰满
  10. 手机定位App从想法到上线运营(1)--介绍