开发者社区> 问答> 正文

C++怎么简单读取顺序文件 ?

各位前辈,最近在学C++文件流,在读取一个文件时我遇到了一些问题
文件的内容是这样的:
` 0 9 10 3 0
7 6 2 1 1
9 3 3 1 1
13 9 3 3 0`
我想把这里面的数字都放到一个数组里
我读取它的一段代码是这样的:

ifstream fp("map1.txt",ios::in);
 if(!fp)
 cout<<"error occours";
 char temp[55];
 for(int i=0;i fp>>temp[i];
 //显示数组内容
 for(int j=0;j<55;j++)
 {
 cout<<temp[j]<<" ";
 if(0==j%4)
 cout<<endl;
 }

我发现这样读出来之后,那些双数,比如第三个数10,它就分成了两个数“1”和“0”
来读取,那么本来我想temp[2]==10的,现在变成temp[2]==1,temp[3]==0了

展开
收起
爵霸 2016-03-11 13:52:35 3130 0
1 条回答
写回答
取消 提交回答
  • ifstream fp("map1.txt",ios::in);
     if(!fp)
     cout<<"error occours";
     char temp[55];//你这个是char型的,每次都只接收一个字符 10是两个字符,读进来肯定会分开的
     for(int i=0;i fp>>temp[i];
     //显示数组内容
     for(int j=0;j<55;j++)
     {
     cout<<temp[j]<<" ";
     if(0==j%4)
     cout<<endl;
     }

    建议每次读一行,然后用空格的方式把他们分开!最后可以转成int型

    2019-07-17 18:59:06
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
使用C++11开发PHP7扩展 立即下载
GPON Class C++ SFP O;T Transce 立即下载
GPON Class C++ SFP OLT Transce 立即下载