第一章 將標準輸入複製到標準輸出 1 2

2022-03-06 04:14:39 字數 875 閱讀 1435

1.  標頭檔案及兩個常量stdin_fileno和stdout_fileno是posix標準的一部分(下一

章將對此作更多說明)。 該標頭檔案包含了很多unix系統服務的函式原型, 例如程式清單1-2中

呼叫的read和write。

2. 兩個常量stdin_fileno和stdout_fileno定義在標頭檔案中, 它們指定了標準輸入

和標準輸出的檔案描述符。 它們的典型值分別是0和1, 但是考慮到可移植性, 我們將使用新名

字。3. 3.9節將詳細討論buffsize常量, 說明它的各種不同值將如何影響程式的效率。 但是不管該常

量值如何, 此程式總能複製任一unix普通檔案。

4. read函式返回讀得的位元組數, 此值用作要寫的位元組數。 當到達檔案的尾端時, read返回0,

程式返回0, 程式停止執行。 如果發生乙個讀錯誤, read返回-1, 出錯時, 大多數系統函式

返回-1。

5. 如果編譯該程式, 其結果輸入標準的a.out檔案, 並以下列方式執行它:

./a.out > data;

那麼, 標準輸入是終端, 標準輸出則重新定向至檔案data, 標準出錯也是終端。 如果此輸出檔案並不存在, 則shell會建立它。 該程式將使用者輸入的各行複製至標

準輸出, 鍵入檔案結束字元(通常是 ctrl + d), 則終止該次複製。

6.  ./a.out < infile > outfile

此時, 標準輸入是infile, 標準輸出是outfile。

所以此時能夠完成複製的功能。

重點:while ( (n  = read(stdin_fileno, buf, buffsize)) > 0)

write(stdout_fileno, buf, n) !=n;

第一章 Linux歷史和標準

第一章 linux歷史和標準 unix的定義可以分為2種 廣義上的定義 執行方式類似於unix的系統,這種定義包含linux 狹義上的定義 通過sus測試,且由open group正式授予unix的作業系統 1.1 unix發展 1969年at t的bell實驗室的ken thompson 這個哥們...

QT學習 第一章 基本對話方塊 使用標準輸入框

refer from 使用標準輸入框作業系統 fedora linux 14 建立資料夾inputdialog,以下是 三個檔案 cpp view plain copy object inputdialog desc 使用標準輸入框 file main.cpp compile qmake qt4 p...

第一章 C 我來了 1 2 初窺輸入 輸出

前言 c 並沒有直接進行輸入或輸出 io 的任何語句,想要實現輸入與輸出,需要用到標準庫。最常用的為處理格式化輸入和輸出的iostream庫,其基礎是兩種命名為istream和ostream的型別 what the hell the型別is?class?include int main 哎,上面的程...