c++面试题字符串拷贝函数示例_C语言教程-查字典教程网
c++面试题字符串拷贝函数示例
c++面试题字符串拷贝函数示例
发布时间:2016-12-28 来源:查字典编辑
摘要:复制代码代码如下:#includeusingnamespacestd;//字符串拷贝函数char*sCpy(char*strDest,cha...

复制代码 代码如下:

#include<iostream>

using namespace std;

//字符串拷贝函数

char * sCpy(char *strDest, char *strSource)

{

_ASSERT((strDest != NULL) && (strSource!=NULL));

char *d = strDest; //获取dest的当前位置

char *s = strSource; //获取source的当前位置

while ((*d++ = *s++) != '') //未到最后一位,作循环

{

}

*d = ''; //补充最后一位

return strDest;

}

int main()

{

char *strSource = "hello,world";

char *strDest = new char[strlen(strSource)+1]; //注意,strlen函数的返回长度是不包括''的,所以要加1

_ASSERT(strDest != NULL);

char *strReturn = sCpy(strDest,strSource);

cout<<"形参返回值"<<strDest<<endl;

cout<<"函数返回值"<<strReturn<<endl;

//不作释放操作也应该是没问题的,主线程退出后系统会回收资源

delete strSource,strDest,strReturn;

strSource = strDest = strReturn = NULL;

return 0;

}

strcpy(str1,str2)函数能够将str2中的内容复制到str1中,为什么还需要函数返回值?应该是方便实现链式表达式,比如:

int i_length = strlen(strcpy(str1,str2));

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新C语言学习
    热门C语言学习
    编程开发子分类