C++ ifstream 从文件中 字符串和数字混合输入
2017-08-15 20:47
471 查看
终于找到了答案。。。
转载:http://blog.csdn.net/u012662688/article/details/51725491
读入数据类似字符串+数字+字符串+数字这样循环穿插混合的类型
比如下面的代码,main函数里有个while循环,无限刷菜单然后用户输入选项的那种,一开始使用freopen会导致缓冲区无限有数据,即无法继续输入选项了就
采用ifstream来解决,注释掉的是之前的会出问题的freopen版本的代码
转载:http://blog.csdn.net/u012662688/article/details/51725491
读入数据类似字符串+数字+字符串+数字这样循环穿插混合的类型
比如下面的代码,main函数里有个while循环,无限刷菜单然后用户输入选项的那种,一开始使用freopen会导致缓冲区无限有数据,即无法继续输入选项了就
采用ifstream来解决,注释掉的是之前的会出问题的freopen版本的代码
#include<bits/stdc++.h> #define N 50 #define M 50 #define W 50 #define Pi acos(-1.0) #define clr(a) memset(a,0,sizeof a) #define space(a) for(int i=0;i<a;i++)printf(" "); using namespace std; int m_num,w_num,s_num;// struct m_item{ char name ; int no ; int score ; }m_item[M]; struct w_item{ char name ; int no ; int score ; }w_item[M]; int sc[5]={7,5,3,2,1}; int mod1(){ ifstream fin1("item.txt"); //freopen("item.txt","r",stdin); while(fin1>>s_num>>m_num>>w_num){ cout<<s_num<<m_num<<w_num<<"\n"; // scanf("%d %d %d",&s_num,&m_num,&w_num); // getchar(); for(int i=0;i<m_num;i++){ //gets(m_item[i].name); fin1>>m_item[i].name; //scanf("%s",m_item[i].name); cout<<m_item[i].name<<"\n"; //printf("%s",m_item[i].name); for(int j=0;j<s_num;j++){ fin1>>m_item[i].no[j]; //scanf("%d",&m_item[i].no[j]); cout<<m_item[i].no[j]<<"\n"; //printf("%d",m_item[i].no[j]); m_item[i].score[j]=sc[j]; } } } for(int i=0;i<w_num;i++){ //gets(w_item[i].name); fin1>>w_item[i].name; //scanf("%s",w_item[i].name); cout<<w_item[i].name<<"\n"; //printf("%s",w_item[i].name); for(int j=0;j<s_num;j++){ fin1>>w_item[i].no[j]; //scanf("%d",&w_item[i].no[j]); cout<<w_item[i].no[j]<<"\n"; //printf("%d",w_item[i].no[j]); w_item[i].score[j]=sc[j]; } //getchar(); } fin1.close(); return 0; } int main(){ int option; // 系统功能菜单选项 int cnt1=0; while(true){ // 输出系统功能提示菜单 cout<<option<<"\n"; cin>>option; switch(option) { case 1:mod1();break; // 添加相应代码 case 0: exit(0); default: cout<<"输入选项不正确!请重新输入!"<<endl; } } return 0; }
相关文章推荐
- C++中利用文件输入对象(即ifstream对象)来读取文本文件中带空格的字符串以及混合输入数字与字符串
- C++ ifstream 从文件中 字符串和数字混合输入
- C++语法基础--标准IO库--文件的输入和输出(fstream,ifstream,ofstream)
- c++里文件的输入输出ofstream和ifstream
- fstream和ifstream详细用法,c++文件输入输出要注意!!
- c++ 文件复制 往文件中输入字符、数字、字符串
- C++文件读写详解(ofstream,ifstream,fstream)
- C++文件读写详解(ofstream,ifstream,fstream)
- C++文件读写详解(ofstream,ifstream,fstream)
- C++文件读写详解(ofstream,ifstream,fstream)
- c++入门:输入一个字符串,将其分段输出,分段符为除字母和数字之外的符号。
- C++文件读写详解(ofstream,ifstream,fstream)
- C++文件读写详解(ofstream,ifstream,fstream)
- C++文件读写详解(ofstream,ifstream,fstream)
- C++ 输入输出文件流(ifstream&ofstream)
- 用C++实现简单的文件I/O操作(ifstream,ofstream)
- C++文件读写详解(ofstream,ifstream,fstream)
- C++文件读写详解(ofstream,ifstream,fstream)
- C++文件读写详解(ofstream,ifstream,fstream)
- C++文件读写详解(ofstream,ifstream,fstream)