我想从文件中读取元素,元素中既有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<<" ";
}
恳请各位大神指点,最好能指出错误,并将正确的代码写一下,十分感激!
#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;
}
试试这个,上次那个是有点问题