for语句为什么会跳出?

zywcx 2009-03-26 07:50:30
我写了一个文件输入的小程序,调用了for语句,为什么不能连续往文件里输入内容呢?
程序如下:

#include <iostream>
#include <fstream>
#include <string>
#include <string.h>
using namespace std;

int main()
{
char file_name[101];
char file_addr[101];
char input_line[501];
cout<<"输入一个你要新建文件的路径(如c:\\xxx\\xxxx):";
cin.getline(file_addr,100);
cout<<"输入一个你要新建的路径以及文件名(如xxxx.txt):";
cin.getline(file_name,100);

strcat(file_addr,"\\"); //输入一个"\\"表示一个"\";
strcat(file_addr,file_name); //直接放入字符串的名称即可,如file_addr[101]无法通过调试;

ofstream file_out(file_addr);
if(!file_out){
cout<<file_addr<<"文件无法打开";
return -1;
}
cout<<file_addr<<"文件已经打开!\n";
for (;;)
{
cin.getline(input_line,500);
file_out<<input_line;
if(strcmp(input_line,"@@@"))
break;
}
file_out.close();
return 0;
}
...全文
63 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
if(strcmp(input_line,"@@@"))
break;
。。
mengde007 2009-03-26
  • 打赏
  • 举报
回复
既然如此那就来点分吧
hust_terry 2009-03-26
  • 打赏
  • 举报
回复
up
qqwx_1986 2009-03-26
  • 打赏
  • 举报
回复
hehe
zywcx 2009-03-26
  • 打赏
  • 举报
回复
不好意思,突然自己想明白了。

#include <iostream>
#include <fstream>
#include <string>
#include <string.h>
using namespace std;

int main()
{
char file_name[101];
char file_addr[101];
char input_line[501];
cout < <"输入一个你要新建文件的路径(如c:\\xxx\\xxxx):";
cin.getline(file_addr,100);
cout < <"输入一个你要新建的路径以及文件名(如xxxx.txt):";
cin.getline(file_name,100);

strcat(file_addr,"\\"); //输入一个"\\"表示一个"\";
strcat(file_addr,file_name); //直接放入字符串的名称即可,如file_addr[101]无法通过调试;

ofstream file_out(file_addr);
if(!file_out){
cout < <file_addr < <"文件无法打开";
return -1;
}
cout < <file_addr < <"文件已经打开!\n";
for (;;)
{
cin.getline(input_line,500);
file_out < <input_line;
if(!strcmp(input_line,"@@@"))
break;
}
file_out.close();
return 0;
}


64,647

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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