36 標準IO庫介紹

2021-08-17 04:53:38 字數 1301 閱讀 1570

檔案io是linux系統api

標準io是c語言庫函式

區別:c語言庫函式是api封裝而來,庫函式多了一層封裝,所以c庫函式更好用一些。

api在不同系統是不通用的,c庫函式在所有系統是幾乎一樣的

所以c庫函式具有可移植性,而api不具有可移植性

易用性,c庫函式更好用,檔案io不帶快取,而標準io是帶快取的

所以標準io的效能更好

最好的辦法還是自己寫**去實戰

開啟和寫入的示例**

#include#include #define filename   "a.txt"

int main(void);

fp = fopen(filename, "w+");//如果檔案沒有則建立,如果檔案已有則截斷

if(null == fp)

printf("檔案開啟成功,fd = %p.\n", fp);

//在這裡讀寫檔案

//len = fwrite("abcde", 1, 5, fp); //要寫入的資料,每乙個的大小,寫入的長度,檔案指標

len = fwrite(a, sizeof(int), sizeof(a)/sizeof(a[0]), fp); //要寫入的資料,每乙個的大小,元素個數,檔案指標

printf("len = %d.\n", len);

fclose(fp);

return 0;

}

加入讀的**

#include#include #include #define filename   "a.txt"

int main(void)

; char buf[100] = ;

fp = fopen(filename, "r+");//如果檔案沒有則建立,如果檔案已有則截斷

if(null == fp)

printf("檔案開啟成功,fd = %p.\n", fp);

//在這裡讀寫檔案

//len = fwrite("abcde", 1, 5, fp); //要寫入的資料,每乙個的大小,寫入的長度,檔案指標.

memset(buf, 0, sizeof(buf));

len = fread(buf, 1, 10, fp); //要寫入的資料,每乙個的大小,元素個數,檔案指標

printf("len = %d.\n", len);

printf("buf is [%s].\n", buf);

fclose(fp);

return 0;

}

Linux標準IO庫快取策略介紹

標準io庫操作是圍繞著流來進行的,當我們通過fopen標準io庫函式開啟乙個檔案,我們就使乙個檔案和乙個io流相關聯。在這裡我們把io流和檔案指標file 等同起來,因為所有針對io流的操作都是通過file 指標來實現的。我們知道引入標準io庫的目的是為了提高io的效率,避免頻繁的進行read wr...

IO標準庫型別

1 iostream istream從流中讀取 ostream寫到流中去 iostream對流進行讀寫 從istream和ostream派生而來 2 fstream ifstream從檔案中讀取 由istream派生而來 ofstream寫到檔案中去 由ostream派生而來 fstream讀寫檔案...

標準模板庫( ) 介紹標準模板庫

標準模板庫就是類與函式模板的大集合。stl共有6種元件 容器,容器介面卡,迭代器,演算法,函式物件和函式介面卡。1 容器 容器是用來儲存和組織其他物件的物件。stl容器類的模板在標準標頭檔案中定義。1 序列容器是上面圖中的前三類 容器的操作 2 deque容器 非常類似vector,且支援相同的操作...