有关TEdit的一个小问题,不过在下很急,望各位拔刀相助。

4241217 2004-05-02 05:15:22
char *p = Edit1->Text.c_str();
Edit6->Text = p;

在我写的程序里执行以上两条语句,会随机出现Edit6->Text和Edit1->Text的内容不相等。也就是说为什么p所指向的字符串与Edit1->Text里的东东会不同?
怎么解决啊,在下很急,望各位不吝赐教。
...全文
92 5 打赏 收藏 举报
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
4241217 2004-05-03
谢谢楼上各位相助,我的问题已经被GeoPhoenix(天鸽)解决了。而楼上两位的方法也可行,既然问题已经解决,分留着也没用。发了!
  • 打赏
  • 举报
回复
sunliwen780502 2004-05-02
char string[100];
int len = strlen(Edit1->Text.c_str());
char *p = new char[len + 1];
p = Edit1->Text.c_str();
strcpy(string, p);
Edit2->Text = string;
试试上面的方法,在bcb6下编译通过.
  • 打赏
  • 举报
回复
weixing979 2004-05-02

char* p = new char[Edit1->Text.Length()];
StrCopy(p,Edit1->Text.c_str());
Edit2->Text=StrPas(p);
  • 打赏
  • 举报
回复
叶子哟 2004-05-02
这样用:
用char *你得先申请内存

  • 打赏
  • 举报
回复
weixing979 2004-05-02
直接用
Edit6->Text=Edit1->Text;
  • 打赏
  • 举报
回复
相关推荐
发帖
C++ Builder
加入

1.3w+

社区成员

C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
申请成为版主
帖子事件
创建了帖子
2004-05-02 05:15
社区公告
暂无公告