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

10 vues (au cours des 30 derniers jours)
qrqr
qrqr le 15 Fév 2019
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
宜しくお願いします。

Réponse acceptée

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

Plus de réponses (0)

Produits


Version

R2013b

Community Treasure Hunt

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

Start Hunting!