有关TEdit的一个小问题,不过在下很急,望各位拔刀相助。
char *p = Edit1->Text.c_str();
Edit6->Text = p;
在我写的程序里执行以上两条语句,会随机出现Edit6->Text和Edit1->Text的内容不相等。怎么解决啊,在下很急,望各位不吝赐教。
问题点数:30、回复次数:5Top
1 楼pmes(pmes)回复于 2004-05-02 16:35:42 得分 0
Edit6->Text=Edit1->Text;
不就行了吗?
p是 (char *)型,
Text 是 AnsiString 型Top
2 楼4241217(alucard)回复于 2004-05-02 17:09:30 得分 0
楼上误会了。
我的意思是为什么p所指向的字符串与Edit1->Text里的东东不同。Top
3 楼matq2008(叶子.net)回复于 2004-05-02 18:29:44 得分 0
因为你没有为它们分配内存!Top
4 楼GeoPhoenix(天鸽)回复于 2004-05-02 23:20:10 得分 30
char *p;
p = new char[Edit1->Text.Length()+1];
strcpy(p,Edit6->Text.c_str());
Top
5 楼4241217(alucard)回复于 2004-05-03 09:26:37 得分 0
这个方法可行,谢谢GeoPhoenix(天鸽)。已经送出30分,请注意查收。Top




