Linux的基礎檔案描述符

2021-07-05 09:13:31 字數 1186 閱讀 9093

環境:vmware workstation;centos-6.4-x86_64

說明:1、linux下所有內容都是檔案,檔案都有檔案描述符。

2、檔案描述符:就是開啟的檔案編號。

3、乙個程序會預設開啟三個檔案:標準輸入(stdin),標準輸出(stdout),標準出錯(stderr)。

4、預設開啟的三個檔案,標頭檔案為unistd.h

程式:作用:驗證程序預設開啟的三個檔案的檔案描述符為0、1、2。

**說明:

步驟:1、書寫main.c:

#include // 包含必要的標頭檔案

#include int main(int argc, char *args)

2、書寫makefile:

.suffixes:.c .o

cc=gcc

srcs=main.c

objs=$(srcs:.c=.o)

exec=main

start: $(objs)

$(cc) -o $(exec) $(objs)

@echo "-----------------------------ok-----------------------"

.c.o:

$(cc) -wall -o $@ -c $<

clean:

rm -rf $(exec) $(objs)

3、編譯並執行程式:

[negivup@negivup mycode]$ make

gcc -wall -o main.o -c main.c

gcc -o main main.o

-----------------------------ok-----------------------

[negivup@negivup mycode]$ ./main

stdin_fileno = 0

stdout_fileno = 1

stderr_fileno = 2

從程式的執行結果中可以看出,標準輸入的檔案描述符是0,標準輸出的檔案描述符是1,標準出錯的檔案描述符是2。

linux檔案描述符

本文介紹了檔案描述符,1 首先說什麼是檔案描述符,它有什麼作用?檔案描述符是乙個簡單的整數,用以標明每乙個被程序所開啟的檔案和socket。基於檔案描述符的輸入輸出函式 open 開啟乙個檔案,並指定訪問該檔案的方式,呼叫成功後返回乙個檔案描述符。creat 開啟乙個檔案,如果該檔案不存在,則建立它...

linux檔案描述符

當某個程式開啟檔案時,作業系統返回相應的檔案描述符,程式為了處理該檔案必須引用此描述符。所謂的檔案描述符是乙個低階的正整數。最前面的三個檔案描述符 0,1,2 分別與標準輸入 stdin 標準輸出 stdout 和標準錯誤 stderr 對應。因此,函式 scanf 使用 stdin,而函式 pri...

Linux 檔案描述符

我們之前就知道在linux作業系統下 一切皆檔案 所以在這個條件下,所有研究的物件都變相的相當於研究檔案,那麼對檔案系統的研究也應該是必須的。我們的核心利用檔案描述符來訪問檔案,每個檔案描述符都是非負整數,開啟現存的檔案或者是新建檔案時,核心會返回乙個檔案描述符,讀寫檔案也需要使用檔案描述符來指定待...