fopenの出力する数字について

조회 수: 7 (최근 30일)
qrqr
qrqr 2019년 2월 15일
답변: Etsuo Maeda 2019년 2월 18일
fopenを連続で行うと出力の数字が増えていくのはなぜですか?
fileは毎回同じパス名です。
連続して同じパスをfopenはしませんが気になったので質問しました。
以下がその時の入出力です。
fid = fopen(file)
fid =
7
fid = fopen(file)
fid =
8
fid = fopen(file)
fid =
9
fid = fopen(file)
fid =
10
fid = fopen(file)
fid =
11
宜しくお願いします。

채택된 답변

Etsuo Maeda
Etsuo Maeda 2019년 2월 18일
同じファイルに対してfopen関数を実行した場合にfileIDの数字が増えるのは、fopen関数を実行するたびに異なるfileIDが割り振られているからです。
fopen関数の仕様では、fileIDはDouble型の整数になっています。
1と2は標準出力と標準エラー出力によって予約されているので、通常のfileIDは3以上の整数になっています。
なお、fopen関数によって開かれたすべてのfileIDを閉じるには、次の構文を使用します。
fclose('all')
また、OS側でいうところのfileIDは、例えばWindowsであれば、次の構文で確認することができます。
! fsutil file queryfileid <filename>
HTH

추가 답변 (0개)

제품


릴리스

R2013b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!