请有兄弟们给我看以下代码!谢了!

binghe_001 2007-04-06 01:00:26
#include<iostream>
#include<string>
#include<fstream>
using namespace std;
int main()
{
string slectwod = "that";
string sgetwod;
string filename;
int inum = 0;
cin>>filename;
fstream infile("filename");
if(!infile)
{
cerr<<"cannot open!"
<<endl;
return 0;
}
while(infile>>sgetwod)
{
if(slectwod == sgetwod)
inum++;
}
cout<<inum;
return 0;
}
打开文件,检索""的个数,但老是文件都打不开!
帮个忙啊!
...全文
208 4 打赏 收藏 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
binghe_001 2007-04-06
  • 打赏
  • 举报
回复
谢谢啊!真的很感谢!
飞羽飞之猪 2007-04-06
  • 打赏
  • 举报
回复
你打开的是名字为filename的文件,没有的话当然打不开

正确的程序应该是
#include<iostream>
#include<string>
#include<fstream>
using namespace std;
int main() {
string slectwod = "that";
string sgetwod;
string filename;
int inum = 0;
cin>>filename;
fstream infile(filename.c_str());//<----------------你这里错啦~~
if (!infile) {
cerr<<"cannot open!"
<<endl;
return 0;
}
while (infile>>sgetwod) {
if (slectwod == sgetwod)
inum++;
}
cout<<inum;
return 0;
}
JoeryLew 2007-04-06
  • 打赏
  • 举报
回复
fstream infile("filename");这句有问题,比如文件名是in.dat,则写作fstream infile("in.dat");如果要自己输入文件名的话,filename不能是string类的,可以设为字符数组。你自己去改改———
binghe_001 2007-04-06
  • 打赏
  • 举报
回复
是看一下啊!

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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