ページ 11

ディスクアクセスに関して意見をお願いします。

Posted: 2012年11月12日(月) 16:49
by needsueda
ディスクアクセスに関して意見をお願いします。
例えば
ディスクアクセスの主な関数としては
1.ファイルを開く  fopen open
2.読込、書込を行う fscanf read
fprintf write
3.ファイルを閉じる fclose close
が挙げられています。
(開発ソフトによっては、別の関数名になっています)
実習C言語(三田典玄著)では前者を高水準関数とし、後者を低水準関数と
区別しています。
高水準関数はOSに依存せず、低水準関数はOSに依存するため
高水準関数の方を著者は薦めていました。

みなさんはどうされていますか。
又どの部分が難しいとお考えですか。

Re: ディスクアクセスに関して意見をお願いします。

Posted: 2012年11月12日(月) 17:50
by softya(ソフト屋)
それは、DOS時代の分け方です。
Windowsの場合openは結局のところWin32APIのcreateFile()を呼び出します。
なので既に低水準関数モドキでしかありません。

WindowsでC言語であれば普通はfopen()、低水準が必要ならcreateFile()と言う住み分けではないでしょうか。

Re: ディスクアクセスに関して意見をお願いします。

Posted: 2012年11月12日(月) 22:02
by ISLe
何の捻りも無いですが、OSに依存しない処理は、移植性を考慮して、高水準関数を使い、OSに依存する処理では低水準関数を使います。

低水準関数を使うと言ってもいつもUNIXシステムコールを使うという意味ではなく、softyaさんのおっしゃるようにウィンドウズではWin32 APIを使うといった意味です。

特に難しいと感じたことはないです。


この質問にはどういう意図があるのでしょう。