一个令我头痛不已的问题,关于错误“Invalid pointer operation”!!!!!

echo79 2002-09-11 09:06:44
我编了一小段程序来实现对一个字符串的解析,图片的名字为"20020112215012100014",想把前14个字符解析为时间"2002-01-12 21:50:12"
程序如下:
void TForm3::GetTime(AnsiString picture_name)
{
char x[20];
int j=0 ;
int i=0;
char time[20];
strncpy(x,picture_name.c_str(),20);
for(i=0;i<14;i++)
{
time[j]=x[i];
if(i==3 ||i==5 )
{
j++;
time[j]='-';
}
if(i==7)
{
j++;
time[j]=' ';
}
if(i==9 ||i==11)
{
j++;
time[j]=':';
}
j++;
}
time[19]='\0';
Form2->DBEdit3->Text=time;
}
在关闭窗体时出现“Invalid pointer operation”的错误,各位能帮我找出原因吗?谢谢!
...全文
101 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
claider 2003-03-03
  • 打赏
  • 举报
回复
Label1->Caption =p->a_SongOnScreen[0].SongName;
Label2->Caption =p->a_SongOnScreen[1].SongName;
Label3->Caption =p->a_SongOnScreen[2].SongName;
Label4->Caption =p->a_SongOnScreen[3].SongName;
Label5->Caption =p->a_SongOnScreen[4].SongName;
我的程序也在这里出问题,请指教,稍后去贴张帖子,大家帮帮忙谢谢。p是我自己写的一个类,其中有 TempSong a_SongOnScreen[0].SongName
class TempSong
{
AnsiString songName;
.
.
.
};
以上问题时好时坏。真麻烦
kingcaiyao 2002-09-11
  • 打赏
  • 举报
回复
那你用的不是模态显示,如果没有在OnClose事件中加代码的话,把你整个窗体的代码都贴出来看看.
Hawk_sun 2002-09-11
  • 打赏
  • 举报
回复
Form2->DBEdit3->Text=time;这一句改成

Form2->DBEdit3->Text=AnsiString(time);
试试!
echo79 2002-09-11
  • 打赏
  • 举报
回复
对了,显示窗体我用的是Form3->Show();
这样调用是模态显示吗,应该怎么做?
echo79 2002-09-11
  • 打赏
  • 举报
回复
onclose()里没有代码,只要对字符串进行操作就经常出现这个问题。我的窗体就是普通的 Form,没有什么特殊的。真不知道该怎么办好了:(
Lo 2002-09-11
  • 打赏
  • 举报
回复
你在OnClose()里有没有加什么代码呀?
kingcaiyao 2002-09-11
  • 打赏
  • 举报
回复
问题不是出现你上面贴出的代码,你的窗体是模态显示吧?

13,824

社区成员

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

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