新微赢技术网

标题: 帮忙看看代码 逻辑错误.. [打印本页]

作者: 酷aiq兒kuku    时间: 2009-11-4 00:48
标题: 帮忙看看代码 逻辑错误..
输出到文件时 不能连续输入.不知道为什么,高手请指点

#include<iostream>
#include<fstream>
#include<cstdlib>

using namespace std;

void cout_char(ofstream& out_stream);
//提示用户输入将用户的输入保存到文件中同时输出到屏幕.

void cin_char(ifstream& in_stream);
//读取文件中的内容并发送到屏幕.

int main()
{
    ifstream fin;
    ofstream fout;

    fin.open("number.txt");
    if(fin.fail())
    {
        cout<<"读取文件打开失败\n";
        exit(1);
    }


    cin_char(fin);


    fout.open("number.txt");
    if(fout.fail())
    {
        cout<<"输出文件打开失败\n";
        exit(1);
    }

   
    cout_char(fout);

    fin.close();
    fout.close();

    cout<<"程序运行结束"<<endl;

    system("pause");

    return 0;
}


void cout_char(ofstream& out_stream)
{
    char ch;

    cout<<"请输入建议输入完毕请按2次回车结束输入"<<endl;


    while(cin.get(ch))
    {
        if(ch=='\n')
        {
            cin.get(ch);
            out_stream.put(ch);
            cout<<ch;
            if(ch=='\n')
            {
                cout<<"输入结束,谢谢使用"<<endl;
                break;
            }
        }
        else
        {
            cin.get(ch);
            out_stream.put(ch);
            cout<<ch;
        }
    }
}


void cin_char(ifstream& in_stream)
{
    char next;

    in_stream.get(next);
    while(!in_stream.eof())
    {
        cout<<next;

        in_stream.get(next);
    }
}




欢迎光临 新微赢技术网 (http://bbs.weiying.cn/) Powered by Discuz! X3.2