strcpy函数的实现

来源:互联网 发布:火狐javascript void 0 编辑:程序博客网 时间:2024/06/04 00:24

已知strcpy的函数原型是:

char* strcpy(char* strDest,const char* strSrc)

1、编程实现strcpy

#define  _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<assert.h>#include<stdlib.h>char* MyStrcpy(char* strDest, const char* strSrc)//不能少const修饰符,并注意返回插入*{assert(strDest != NULL || strSrc != NULL);//注意:检查参数的有效性char* strDestCopy = strDest;                //保存目标字符串的首地址while ((*strDest++ = *strSrc++) != '\0');return strDestCopy;}int getStrLen(const char* strSrc){int len=0;while (*strSrc++ != '\0'){len++;}return len;}void main(){char strSrc[] = "hello world!";char strDest[20];int len = 0;len = getStrLen(MyStrcpy(strDest, strSrc));//链式表达式,先复制后计算长度printf("strDest:%s", strDest);printf("\nstrDest length:%d\n", len);system("pause");}//char* 就是为了可以使用链式表达式

2、解释为什么要返回char*

0 0