0
class student
{
char *name;
int I;
public:
student()
{
I=0;
name=new char[I+1];
}
student(char *s)
{
I=strlen(s);
name=new char[I+1];
strcpy(name,s);
}
void display()
{
cout<<name<<endl;
}
void manipulate(student &a,student &b)
{
I=a.I+b.I;
delete name;
name=new char[I+1];
strcpy(name,a.name);
strcpy(name,b.name);
}
};
void main()
{
clrscr();
char *temp="Jack";
student name1(temp),name2("Jill"),name3("John"),S1,S2;
S1.manipulate(name1,name2);
S2.manipulate(S1,name3);
S1.display();
S2.display();
getch();
}
我計算了這個代碼的輸出很多次,但不明白它。 此代碼的輸出爲: Jill endline約翰指針相關的輸出
你期望輸出是什麼? – 2010-09-19 15:32:26
你的問題是什麼? – abelenky 2010-09-19 15:34:41
輸出必須是Jill一個換行符,然後我檢查了編譯器的插口 – user451990 2010-09-19 15:38:01