[转载] 已知strcpy的函数原型:char *strcpy(char *strDest, const char *strSrc),编写函数 strcpy(C++版)
2016-02-21 10:07
543 查看
已知strcpy的函数原型:char *strcpy(char *strDest, const char *strSrc)其中strDest 是目的字符串,strSrc 是源字符串。不调用C++/C 的字符串库函数,请编写函数 strcpy。
/*
编写strcpy函数(10分)
已知strcpy函数的原型是
char *strcpy(char *strDest, const char *strSrc);
其中strDest是目的字符串,strSrc是源字符串。
(1)不调用C++/C的字符串库函数,请编写函数 strcpy
(2)strcpy能把strSrc的内容复制到strDest,为什么还要char * 类型的返回值?
答:为了 实现链式表达式。 // 2分
例如 int length = strlen( strcpy( strDest, “hello world”) );
*/
#include <assert.h>
#include <iostream>
using namespace std;
char*strcpy(char*strDest, constchar*strSrc)
{
assert((strDest!=NULL) && (strSrc !=NULL));
char* address = strDest;
while((*strDest++=*strSrc++)!='\0');"
return address ;
}
Note:(*strDest++=*strSrc++) 的返回值为子表达式的左值,即strDest
/*
编写strcpy函数(10分)
已知strcpy函数的原型是
char *strcpy(char *strDest, const char *strSrc);
其中strDest是目的字符串,strSrc是源字符串。
(1)不调用C++/C的字符串库函数,请编写函数 strcpy
(2)strcpy能把strSrc的内容复制到strDest,为什么还要char * 类型的返回值?
答:为了 实现链式表达式。 // 2分
例如 int length = strlen( strcpy( strDest, “hello world”) );
*/
#include <assert.h>
#include <iostream>
using namespace std;
char*strcpy(char*strDest, constchar*strSrc)
{
assert((strDest!=NULL) && (strSrc !=NULL));
char* address = strDest;
while((*strDest++=*strSrc++)!='\0');"
return address ;
}
Note:(*strDest++=*strSrc++) 的返回值为子表达式的左值,即strDest
相关文章推荐
- C++之路进阶——并查集(部落划分)
- C++ Primer引子
- C/C++指针与多维数组的关系
- 搭建C++开发开发环境
- 算法训练 王、后传说
- c++ lamdba表达式
- 20160208.CCPP体系详解(0018天)
- 20160208.CCPP体系详解(0018天)
- 20160208.CCPP体系详解(0018天)
- 经典C语言程序设计100例
- neuq oj 1050: 谭浩强C语言(第三版)习题6.6 C++
- 理解C语言——从小菜到大神的晋级之路(10)——结构体、联合体
- neuq oj 1049: 谭浩强C语言(第三版)习题6.5 C语言
- C++高频面试题
- C++基本概念——C++中的友元
- utilities(C++)——枚举
- c++设计一个不能被继承的类,为什么必须是虚继承?原因分析
- 人提醒电脑猜大小c++源代码
- OpenJudge百炼习题解答(C++)--题4108:羚羊数量-Number Of Antelope
- OpenJudge百炼习题解答(C++)--题4109:公共朋友-Common Friends