ディスクアクセスに関して意見をお願いします。
例えば
ディスクアクセスの主な関数としては
1.ファイルを開く fopen open
2.読込、書込を行う fscanf read
fprintf write
3.ファイルを閉じる fclose close
が挙げられています。
(開発ソフトによっては、別の関数名になっています)
実習C言語(三田典玄著)では前者を高水準関数とし、後者を低水準関数と
区別しています。
高水準関数はOSに依存せず、低水準関数はOSに依存するため
高水準関数の方を著者は薦めていました。
みなさんはどうされていますか。
又どの部分が難しいとお考えですか。
ディスクアクセスに関して意見をお願いします。
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 14年前
- 住所: 東海地方
- 連絡を取る:
Re: ディスクアクセスに関して意見をお願いします。
それは、DOS時代の分け方です。
Windowsの場合openは結局のところWin32APIのcreateFile()を呼び出します。
なので既に低水準関数モドキでしかありません。
WindowsでC言語であれば普通はfopen()、低水準が必要ならcreateFile()と言う住み分けではないでしょうか。
Windowsの場合openは結局のところWin32APIのcreateFile()を呼び出します。
なので既に低水準関数モドキでしかありません。
WindowsでC言語であれば普通はfopen()、低水準が必要ならcreateFile()と言う住み分けではないでしょうか。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: ディスクアクセスに関して意見をお願いします。
何の捻りも無いですが、OSに依存しない処理は、移植性を考慮して、高水準関数を使い、OSに依存する処理では低水準関数を使います。
低水準関数を使うと言ってもいつもUNIXシステムコールを使うという意味ではなく、softyaさんのおっしゃるようにウィンドウズではWin32 APIを使うといった意味です。
特に難しいと感じたことはないです。
この質問にはどういう意図があるのでしょう。
低水準関数を使うと言ってもいつもUNIXシステムコールを使うという意味ではなく、softyaさんのおっしゃるようにウィンドウズではWin32 APIを使うといった意味です。
特に難しいと感じたことはないです。
この質問にはどういう意図があるのでしょう。