<fopen関数のモード>
fopen関数では、以下のようなモードを指定してファイルをオープンします。
モード |
内容 |
ファイルがあるとき |
ファイルがないとき |
"r" |
読み込み専用 |
正常 |
エラー(NULL返却) |
"w" |
書き込み専用 |
サイズを0にする(上書き) |
新規作成 |
"a" |
追加読み込み専用 |
最後に追加する |
新規作成 |
"r+" |
読み込みと書き込み |
正常 |
エラー(NULL返却) |
"w+" |
書き込みと読み込み |
サイズを0にする(上書き) |
新規作成 |
"a+" |
読み込みと追加書き込み |
最後に追加する |
新規作成 |
"r", "w",
"a"はそれぞれ「読み」「下記」「追加」の専用モードです。つまり"r"モードでfopenしたファイルに書き込むことはできません。"r+"と"w+"は、一見同じ「読み書き」可能に見えますが、ファイルの有無で動作が異なります。
バイナリモードで開くときは"rb","w+b"のように"b"を付加します。省略するとテキストモードになります。