Windows (Visual C) 用の unistd.h に代わるものはありますか?
開発者は、Unix コンソール プログラムを Windows に移植するときに、が存在しないため、「srandom」、「random」、「getopt」のプロトタイプが欠落しています。 "unistd.h".
ドロップイン交換の必要性があるにもかかわらず、インターネット上で広範な検索を行っても結果が得られませんでした。このギャップに対処するために、一般的に使用される関数をカバーする、Windows 用の「unistd.h」ポートの出発点をここに示します。
#ifndef _UNISTD_H #define _UNISTD_H 1 #include <stdlib.h> #include <io.h> #include <getopt.h> #include <process.h> #include <direct.h> #define srandom srand #define random rand #define R_OK 4 #define W_OK 2 #define F_OK 0 #define access _access #define dup2 _dup2 #define execve _execve #define ftruncate _chsize #define unlink _unlink #define fileno _fileno #define getcwd _getcwd #define chdir _chdir #define isatty _isatty #define lseek _lseek #define STDIN_FILENO 0 #define STDOUT_FILENO 1 #define STDERR_FILENO 2 typedef __int8 int8_t; typedef __int16 int16_t; typedef __int32 int32_t; typedef __int64 int64_t; typedef unsigned __int8 uint8_t; typedef unsigned __int16 uint16_t; typedef unsigned __int32 uint32_t; typedef unsigned __int64 uint64_t; #endif /* unistd.h */
このコードは、不足している関数のプロトタイプを提供し、Windows 固有のファイル処理関数を組み込んでいます。元の Unix ファイル ハンドル (STDIN_FILENO、STDOUT_FILENO、STDERR_FILENO) を保持しながら。
さらに必要に応じてポートに拡張機能を追加できるため、Windows 環境における「unistd.h」の包括的な置き換えとなります。
以上がWindows で Unix の unistd.h ヘッダー ファイルに相当するものは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。