IDC

如何字符串拷贝函数的几种方法,你猜哪个效率高?

作者:admin 2021-05-12 我要评论

strcpy,即string copy(字符串复制)的缩写。 是C语言标准库中实现字符串拷贝的一个函数。 各大公司笔试题最喜欢考的一道题,快来看看,你会几种方法? 问:你会如...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

strcpy,即string copy(字符串复制)的缩写。

是C语言标准库中实现字符串拷贝的一个函数。

各大公司笔试题最喜欢考的一道题,快来看看,你会几种方法?

问:你会如何实现这个函数呢?

1.

  1. void strcpy(char *strDest, char *strSrc){   
  2.      while( (*strDest++ = *strSrc++) != '\0' ); 

2.

  1. //将源字符串 strSrrc加const,表明其为常量输入参数 
  2. void strcpy(char *strDest, const char *strSrc){     
  3.     while( (*strDest++ = *strSrc++) != '\0' ); 

3

  1. void strcpy(char *strDest, const char *strSrc){     
  2.       //对源地址strSrc和目标地址strDest加非NULL(0)断言   
  3.       assert( (strDest != NULL) && (strSrc != NULL) );     
  4.       while( (*strDest++ = *strSrc++) != '\0' ); 

4

  1. //为了实现链式操作,将目的地址返回 
  2. char* strcpy(char *strDest, const char *strSrc){  
  3.       assert( (strDest != NULL) && (strSrc != NULL) );    
  4.       char *address = strDest;     
  5.       while( (*strDest++ = *strSrc++) != '\0' );    
  6.       return address; 

5

  1. .text 
  2. mystrcopy: 
  3.   LDRB r2, [r1], #1 
  4.   STRB r2, [r0], #1 
  5.   CMP r2, #0 
  6.   BNE mystrcopy 
  7.   MOV pc, lr 

本文转载自微信公众号「一口Linux」,可以通过以下二维码关注。转载本文请联系一口Linux公众号。


本文转载自网络,原文链接:https://mp.weixin.qq.com/s/DVaymDdW6Ncc2prpXFQxxg

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • 如何字符串拷贝函数的几种方法,你猜哪

    如何字符串拷贝函数的几种方法,你猜哪

  • 吃透 MQ 系列之核心基础篇

    吃透 MQ 系列之核心基础篇

  • 鸿蒙的JS开发部模式17:鸿蒙的系统能力

    鸿蒙的JS开发部模式17:鸿蒙的系统能力

  • 一篇文章教会你使用SVG画圆形

    一篇文章教会你使用SVG画圆形

腾讯云代理商
海外云服务器