当前位置:主页 > 查看内容

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

发布时间:2021-05-12 00:00| 位朋友查看

简介:strcpy,即string copy(字符串复制)的缩写。 是C语言标准库中实现字符串拷贝的一个函数。 各大公司笔试题最喜欢考的一道题,快来看看,你会几种方法? 问:你会如何实现这个函数呢? 1. voidstrcpy( char *strDest, char *strSrc){ while((*strDest++=*strSrc+……

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
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!
上一篇:吃透 MQ 系列之核心基础篇 下一篇:没有了

推荐图文


随机推荐