JCSY 发表于 2018-6-24 15:15:34

求大佬解答 文件流的输出逻辑

本帖最后由 JCSY 于 2018-6-24 15:40 编辑

#include<iostream>
#include<fstream>
using namespace std;
int main()
{         int i ;
        ofstream ftxt1 ;
        ftxt1.open( "d:\\f1.txt", ios::out ) ;
       for( i=1; i<10; i++ )
                   ftxt1 << i << ' ' ;
       ftxt1.close() ;
       ifstream ftxt2 ;
       ftxt2.open( "d:\\f1.txt", ios::in ) ;
       while( !ftxt2.eof() )
       {       ftxt2 >> i >> i ;
                    cout << i << endl ;
        }
}

输出结果为什么是:
2
4
6
8
9

风过无痕丶 发表于 2018-6-24 16:08:54

这样理解,你有这么一个代码:
// 输入 1 2
cin >> i >> i;

现在 i 等于几,如果我学得没有错的话, 那么i是等于2的

同理,你不要想复杂了。
ftxt2 >> i >> i ;
这个是不是也相当于给i赋值了两次
然后你在打印 i 那么i现在等于几

JCSY 发表于 2018-6-24 21:34:25

ftxt2 >> i >> i ;
i 先赋值,后再一次将值赋给 i ,覆盖掉先前赋给 i 的值,相当于给 i 赋了两次值。

JCSY 发表于 2018-6-24 21:35:25

风过无痕丶 发表于 2018-6-24 16:08
这样理解,你有这么一个代码:




了解了,谢谢!
页: [1]
查看完整版本: 求大佬解答 文件流的输出逻辑