一个简单的问题 但是很急 在线等待

zhuxinshen 2003-10-20 02:03:11
C++ Builder中的EDIT控件的TEXT如何转换成char字符串类型

请大家帮忙
...全文
38 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
grasshoper97 2003-11-03
  • 打赏
  • 举报
回复
早看这个铁字就好了,我整了一下午才明白
weixing979 2003-10-26
  • 打赏
  • 举报
回复
一个字,晕
gdy119 2003-10-26
  • 打赏
  • 举报
回复
简单的都喜欢说
!!!
Lewolf 2003-10-21
  • 打赏
  • 举报
回复
关于这个的帖子太多了
Cocoky 2003-10-21
  • 打赏
  • 举报
回复
AnsiString::c_str() returns a non const temporary pointer to the internal string buffer in the AnsiString object. The pointer is invalid once the statement in which it is used has finished executing. That is,don't do something like this:

char* cp = Edit1->Text.c_str();
char* cp2 = strtok( cp, " \t\n" ); // cp may no longer be valid


If you need a persistent pointer, you MUST copy the string into its own buffer:

char* cp = new char[ Edit1->Text.Length() + 1 ];
strcpy( cp, Edit1->Text.c_str() );
yuyehong 2003-10-21
  • 打赏
  • 举报
回复
偶试过了,这样可以
char a[12];
strcpy(a, Edit1->Text.c_str());
jiangchun_xn 2003-10-21
  • 打赏
  • 举报
回复
哈哈,真怀疑是马甲捣乱
yuyehong 2003-10-20
  • 打赏
  • 举报
回复
两种解决方案:
1、循环单个赋值
2、把你的char 定义成char *
huangjuliang 2003-10-20
  • 打赏
  • 举报
回复
都已经说了!
Kabin 2003-10-20
  • 打赏
  • 举报
回复
AnsiString Test = "哈哈";
char *chr = Test.c_str();
yst_killed 2003-10-20
  • 打赏
  • 举报
回复
AnsiString str = Edit1->Text;
char *ch;
ch= str.c_str();
以下就可以对ch[]操作了;
wyb_45 2003-10-20
  • 打赏
  • 举报
回复
楼上写的会有问题,
而且程序执行错误结果,自己还不知道错在哪了。

以下是String to char *的安全操作

char* cp = new char[ Edit1->Text.Length() + 1 ];
strcpy( cp, Edit1->Text.c_str());
参考BCB帮助 关键字c_str()
SCUM 2003-10-20
  • 打赏
  • 举报
回复
Edit1->Text.c_str();
转出来是 char *

604

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder VCL组件使用和开发
社区管理员
  • VCL组件使用和开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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