C++文件操作,异或加密有关问题

C++文件操作,异或加密问题代码如下#include fstream#include iostreamusing namespace stdint main(i

C++文件操作,异或加密问题
代码如下


#include <fstream>
#include <iostream>
using namespace std;

int main(int argc , char* argv[])
{
    if(argc < 3) return -1;
    ifstream fin(argv[1],ios::binary);
    ofstream fout(argv[2],ios::binary);
    while(!fin.eof())
    {
        char t;
        fin.read(&t,sizeof(char));
        fout.put(t^65);
    }
    fin.close();
    fout.close();      
    return 0;
}



发现加密后的文件总会比加密前的文件多一个字节。请问为什么?谢谢各位。。。 c++ ?文件操作
[解决办法]
    while(!fin.eof())
    {
        char t;
        fin.read(&t,sizeof(char));
        fout.put(t^65);
    }

典型错误, 在没有读之前, 流是不会意识到EOF的.

改吧.