std::fopen
提供: cppreference.com
ヘッダ <cstdio> で定義 | ||
std::FILE* fopen(constchar* filename, constchar* mode ); | ||
filename
で指定されたファイルを開き、そのファイルに紐付けられたファイルストリームを返します。 ファイルアクセスモードを決定するために mode
が使用されます。
目次 |
[編集]引数
filename | - | ファイルストリームを紐付けるファイル名 | ||||||||||||||||||||||||||||||||||||||||||||||||||
mode | - | ファイルアクセスモードを決定するヌル終端文字列
|
[編集]戻り値
成功した場合は、開いたファイルストリームを制御するオブジェクトを指すポインタを返します。 EOF ビットとエラービットはどちらもクリアされています。 filename が対話型デバイスを参照していなければ、ストリームは完全バッファリングされます。
エラーの場合は、ヌルポインタを返します。 POSIX はこの場合に errno を設定することを要求しています。
[編集]ノート
filename
の書式は処理系定義であり、必ずしもファイルを参照するとは限りません (例えば、ファイルシステム API を通してアクセス可能なコンソールや別のデバイスかもしれません)。 プラットフォームがサポートする場合、 filename
はファイルシステムの絶対パスまたは相対パスを含んでも構いません。
移植性のあるディレクトリとファイルの名前付けのためには、 C++ のファイルシステムライブラリや boost.filesystem を参照してください。
[編集]例
Run this code
#include <stdio.h>#include <stdlib.h> int main(void){ FILE* fp = fopen("test.txt", "r");if(!fp){ perror("File opening failed");returnEXIT_FAILURE;} int c;// note: int, not char, required to handle EOFwhile((c = fgetc(fp))!=EOF){// standard C I/O file reading loop putchar(c);} if(ferror(fp)) puts("I/O error when reading");elseif(feof(fp)) puts("End of file reached successfully"); fclose(fp);}
[編集]関連項目
ファイルを閉じます (関数) | |
出力ストリームを実際のファイルと同期させます (関数) | |
既存のストリームを別の名前で開きます (関数) | |
fopen の C言語リファレンス |