威斯特布鲁克 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 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器