亲宝软件园·资讯

展开

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

人气:0
想了解c++面试题字符串拷贝函数示例的相关内容吗,在本文为您仔细讲解c++字符串拷贝函数的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:字符串拷贝函数,下面大家一起来学习吧。

复制代码 代码如下:

#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));

加载全部内容

相关教程
猜你喜欢
用户评论