注册 登录
编程论坛 C++教室

关于字符串替换问题~~ 求助

clumt 发布于 2010-06-09 13:15, 589 次点击
字符串的替换问题  ~~   求助 帮忙改下!
#include <iostream.h>
#include <string.h>
class String
{
public:
    String(){p=NULL;}
    ~String(){}
    String(char *str);
    strcpy (String &string1,String &string2);
    void display();
private:
    char *p;

};
String::String(char *str)
{
    p=str;
}
void String::display ()
{
    cout<<p;
}



String::strcpy (String &string1,String &string2)
{
    cout<<strcpy(string1,string2);
}


        

int main()
{
    String string1("China"),string2("Amercia"),string3("Book"),string4("China");
   
    char *p=strcpy(string1,string2);
    return 0;
}
  结果显示
error C2664: 'strcpy' : cannot convert parameter 1 from 'class String' to 'char *'
            No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
要求用到类~~~~ 怎么改正啊??
4 回复
#2
fhqbgmqj2010-06-09 16:55
strcopy函数复制的时候是以NULL为结尾标志的,你string1中的China后空上个字符(不是空格,将string1的长度设置比China多1个位,不给赋值就是NULL)试试。
#3
南国利剑2010-06-09 17:33
纠正楼上的,函数名是strcpy而不是strcopy
#4
guowei37582010-06-09 22:18
在strcpy函数前不用加返回类型吗???
#5
fhqbgmqj2010-06-10 00:37
回复 3楼 南国利剑
这都写错了,见笑了……谢谢提醒啊……
1