首页 > 学院 > 开发设计 > 正文

简单的介绍5 种字符串拷贝的方法:

2019-11-06 07:13:19
字体:
来源:转载
供稿:网友

简单的介绍5 种字符串拷贝的方法:

1、char * strcopy_1(char * dest, char * scr)

char * strcopy_1(char * dest, char * scr){ if (dest == NULL || scr == NULL) { return NULL; } char * temp = dest; while (*temp++ = *scr++); return dest;}

2、char * strcopy_2(char * dest, char * scr)

char * strcopy_2(char * dest, char * scr){ if (dest == NULL || scr == NULL) { return NULL; } unsigned int len = strlen(scr) + 1; while (*dest++ = *scr++); return dest - len;}

3、char * strcopy_3(char * dest, char * scr)

char * strcopy_3(char * dest, char * scr){ if (dest == NULL || scr == NULL) { return NULL; } memcpy(dest, scr, strlen(scr) + 1); return dest;}

4、char * strcopy_4(char * dest, char * scr)

char * strcopy_4(char * dest, char * scr){ if (dest == NULL || scr == NULL) { return NULL; } for (unsigned int i = 0; i < strlen(scr) + 1; i++) { dest[i] = scr[i]; } return dest;}

5、char * strcopy_5(char * dest, char * scr)

char * strcopy_5(char * dest, char * scr, int len = 0){ if (dest == NULL || scr == NULL) { return NULL; } *dest = *scr; if (*scr == '/0') { return dest - len; } return strcopy_5(dest + 1, scr + 1, len + 1);}

写个main函数调用一下:

int main(){ char * strScr = "Hello World"; char strDest[MAX_LEN]; PRintf("%s/n", strcopy_1(strDest, strScr)); printf("%s/n", strcopy_2(strDest, strScr)); printf("%s/n", strcopy_3(strDest, strScr)); printf("%s/n", strcopy_4(strDest, strScr)); printf("%s/n", strcopy_5(strDest, strScr)); return 0;}

输出结果为: 这里写图片描述


上一篇:c语言之队列结构

下一篇:最小生成树

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表