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

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

在我写的程序里执行以上两条语句,会随机出现Edit6->Text和Edit1->Text的内容不相等。也就是说为什么p所指向的字符串与Edit1->Text里的东东会不同?
怎么解决啊,在下很急,望各位不吝赐教。
...全文
123 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
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;

13,871

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧