高手帮我看一段程序,,谢谢

jack_415 2005-06-08 05:52:25
extern "C" __declspec(dllexport) int PASCAL delete_file_row(string file_name,string table_name)
{ ifstream infile(file_name.c_str(),ios::in);
if(!infile)
{ cerr<<"oops! nuable to open file "<<file_name<<"--bailing out !\n"; exit(-1);
}
else
cout<<'\n';
vector<string> lines_of_text;

string textline;
long linenum=0;
while(getline(infile,textline,'\n'))
{
cout<<"line read : "<<textline<<'\n';
lines_of_text.push_back(textline);
linenum++;
}
cout<<linenum<<endl;
infile.close();
vector<string>::iterator iter = lines_of_text.begin(); vector<string>::iterator iter_end = lines_of_text.end();
while(iter!=iter_end)
{
if((*iter).compare(table_name+"_Begin")!=0)
{
iter++;
continue;
}
else
{
for(;(*iter).compare(table_name+"_End")!=0;iter++)
{
iter->erase(0,iter->length());
cout<<*iter<<endl;
}
iter->erase(0,iter->length());
cout<<*iter<<endl;
}
iter++;
}
iter = lines_of_text.begin();
iter_end = lines_of_text.end();
long i=0;
ofstream outfile(file_name.c_str());////还用file_name作文件名,替换以前的文件
if (!outfile)
return -1;
for(; iter!=iter_end ; iter++,i++)
{
if(*iter!="")////这个条件一定要有,否则会有很多空行!
{
outfile<<*iter<<'\n';
cout<<*iter<<endl;
}
}
cout<<"*******************i****************= "<<i<<endl;
outfile.close();
// cout<<"lines_of_text : "<<lines_of_text<<endl;
// cout<<"lines_of_text : "<<lines_of_text<<endl;
return 1;
}

这个函数已经做成了一个动态库,但用PB调用它的时候,总提示内存错误,为什么啊。
...全文
94 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
blueice008 2005-06-10
  • 打赏
  • 举报
回复
up
terryshi 2005-06-10
  • 打赏
  • 举报
回复
这个和C#有关系吗?

1,979

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 其他语言讨论
社区管理员
  • 其他语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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