服务器之家

服务器之家 > 正文

c++面试题字符串拷贝函数示例

时间:2021-01-12 14:55     来源/作者:C++教程网

复制代码 代码如下:


#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++) != '\0')   //未到最后一位,作循环
    {
    }
    *d = '\0';                      //补充最后一位
    return strDest;
}

int main()
{
    char *strSource = "hello,world";
    char *strDest = new char[strlen(strSource)+1];      //注意,strlen函数的返回长度是不包括'\0'的,所以要加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));

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
返回顶部