關於unistd標頭檔案

2021-08-13 09:36:41 字數 1648 閱讀 6365

unistd.h

是 c 和 

c++程式語言中提供對 

posix

作業系統 

api的訪問功能的

標頭檔案的名稱。該標頭檔案由 posix.1 標準(單一unix規範的基礎)提出,故所有遵循該標準的作業系統和

編譯器均應提供該標頭檔案(如 unix 的所有官方版本,包括 

mac os x

、linux

等)。原始碼:

#ifndef _unistd_h

#define _unistd_h

#include #ifdef __cplusplus

extern "c"

#endif

#endif /** _sys_unistd_h *

unistd.h含有的常量與函式:

ssize_t      read(int, void *, size_t); // 讀取檔案使用

int          unlink(const char *);

ssize_t      write(int, const void *, size_t); // 寫檔案

int          usleep(useconds_t); // 程序休眠,單位為微妙

unsigned     sleep(unsigned); // 程序休眠,單位為秒

int          access(const char *, int); // 獲取檔案的許可權

unsigned     alarm(unsigned);

int          chdir(const char *);

int          chown(const char *, uid_t, gid_t);

int          close(int); // 關閉檔案

size_t       confstr(int, char *, size_t);

void        _exit(int);

pid_t        fork(void);

null           // null pointer

seek_cur    // set file offset to current plus offset.

seek_end    // set file offset to eof plus offset.

seek_set    // set file offset to offset.

許多在linux下開發的c程式都需要標頭檔案

unistd.h

,但vc

中沒有個頭檔案,

所以用vc

編譯總是報錯。把下面的內容儲存為

unistd.h

,可以解決這個問題。

/** this file is part of the mingw32 package.

* unistd.h

maps 

(roughly) to io.h

*/#ifndef _unistd_h

#define _unistd_h

#include

#include

#endif /* _unistd_h */

關於標頭檔案

自定義標頭檔案通常放在使用該標頭檔案的原始檔所在的目錄中,並使用 include myhead.h 來包含。標頭檔案是不編譯的,因為c語言編譯過程之前有個預編譯過程。在這個過程中用標頭檔案中的內容替換原始檔中 include 命令,所以在編譯器看來,沒有標頭檔案,只有原始檔。預編譯過程還包括條件編譯...

關於time h標頭檔案

編輯 1 2 3 4 5 6 7 8 include include intmain 編輯 time t time time t timer 得到從標準計時點 一般是1970年1月1日午夜 到當前時間的秒數。clock t clock void 得到從程式啟動到此次 函式呼叫時累計的毫秒數。編輯 函...

關於errno標頭檔案

看見網上很多地方都用到這個標頭檔案,一直不理解,今天找了一些資料,可以方便自己理解 errno是乙個巨集,它定義在對應的標頭檔案裡面,這個在上面的鏈結裡也有說到 errno是乙個全域性變數,它儲存了最近一次的錯誤。我常看見的乙個 是 errno eexisteexist的中文翻譯是錯誤已經存在 也就...