strcpy,strlen函数和string类原型-创新互联

编写strcpy函数:已知strcpy函数的原型是char strcpy(charstrDest, const char strSrc);
其中strDest是目的字符串,strSrc是源字符串。
(1)不调用C++/C的字符串库函数,请编写函数 strcpy
(2)strcpy能把strSrc的内容复制到strDest,为什么还要char
类型的返回值?答:为了 实现链式表达式。

创新互联主营渠县网站建设的网络公司,主营网站建设方案,重庆APP软件开发,渠县h5小程序设计搭建,渠县网站营销推广欢迎渠县等地区企业咨询

编写strlen函数:strlen函数原型是size_t strlen(char *string);
strcpy,strlen函数和string类原型

测试:

void main()
{
char str1[ ] = "dsvgfgd";
char str2[ ] = "gvdbh";
strcpy(str1, str2);
printf("%s\n", str1);
int i = strlen(str1);
printf("%d\n", i);

}

String类原型:
#include
#include
#include
class String
{
public:
String(const char str = NULL);
String(const String &another);
~String();
String& operator=(const String &rhs);
private:
char
m_data;
};
String::String(const char str)
{
if (str == NULL)
{
m_data = new char[1];
m_data[0] = '\0';
}
else
{
m_data = new char[strlen(str) + 1];
strcpy(m_data, str);
}
}
String::String(const String &another)
{
m_data = new char[strlen(another.m_data) + 1];
strcpy(m_data, another.m_data);
}
String& String::operator=(const String &rhs)
{
if (this == &rhs)
return
this;
delete [ ]m_data;
m_data = new char[strlen(rhs.m_data) + 1];
strcpy(m_data, rhs.m_data);
return *this;
}
String::~String()
{
delete [ ]m_data;
}

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


当前文章:strcpy,strlen函数和string类原型-创新互联
文章起源:http://azwzsj.com/article/cohdpe.html