0

以下は私のプログラムです:

#include <fstream>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    fstream hd;
    hd.open("fstream.dat", fstream::in | fstream::out);

    hd.put('a');
    hd.close();
    return 0;
}

ただし、このプログラムの実行後はファイルは作成されません。何が問題なのですか?

4

1 に答える 1

1

fstream::appファイルがすでに存在する場合の処理​​を指定するには、またはfstream::truncフラグビットを追加する必要があります(それぞれ、追加またはクローバー)。

これがファイルが作成されるかどうかにも影響するのは少し特異ですが、C++はこれをC/POSIXfopen関数から継承します。

于 2013-03-27T02:31:50.810 に答える