威斯特布鲁克 2014-03-17 04:34 采纳率: 0%
浏览 2004

c++中关于文件读取的问题

我想从文件中读取元素,元素中既有int型又有char型,然后再将这段元素输出
比如文件中的元素是2 3 5 * + 10 2 / -
我想将文件中的元素读取后再输出它们,但我不知道这段代码错在哪里
ifstream in;
in.open("E:/c.txt");
int a;
char b;
while(!in.eof())
{while(in>>a)
cout< in.clear();
in>>b;
cout<<b<<" ";
}
恳请各位大神指点,最好能指出错误,并将正确的代码写一下,十分感激!

  • 写回答

1条回答

  • 赤色彗星 2014-03-17 05:32
    关注
    #include <iostream>
    #include <fstream>
    #include <stdlib.h>
    using namespace std;
    
    int main()
    {
        FILE *fp;
        if(fp=fopen("E:/c.txt","r"));
        char ch = fgetc(fp);
        while(ch != EOF)
        {
            if(ch >= 48 && ch <= 57)
            {
                int b = ch - 48; // 数字
                cout << b;
            }
            else
            {
                cout << ch; // 非数字
            }
            ch = fgetc(fp);
        }
        fclose(fp);
        return 0;
    }
    

    试试这个,上次那个是有点问题

    评论

报告相同问题?

悬赏问题

  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败
  • ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
  • ¥15 找一位技术过硬的游戏pj程序员
  • ¥15 matlab生成电测深三层曲线模型代码
  • ¥50 随机森林与房贷信用风险模型