Linux系統調用與函數調用

一、系統調用和函數調用

(一)、系統調用依賴於系統,函數庫不依賴於系統
(二)、系統調用無緩衝區,函數庫有緩衝區

(三)、圖釋:



(四)、緩衝區類型:1、全緩衝(全部到緩衝區)    2、行緩衝
(五)、相關API:
1、sprintf(msg,"%d:%s:%s:%s",id,name,tel,addr);
將內容注入msg
fprintf(stdout,"%d:%s:%s:%s:%c",id,name,tel,addr,'\n');
將內容輸出至終端
fgets(msg,sizeof(msg),stdin);    從終端上獲取數據
printf("msg = %s\n",msg);
或者fputs(msg,stderr);    stderr出錯處理


2、read(0,buf,sizeof(buf));
printf("buf = %s\n",buf);
write(1,buf,sizeof(buf));        打印至終端
write(2,buf,sizeof(buf));        打印至終端(可出錯處理)
1和2代表的是參數類型
1:STDIN_FILENO    2:STDOUT_FILENO
包括的頭文件爲:    #include <unistd.h>


3、綜合:對普通文件的操作,儘量用庫函數做。其他文件用系統調用

發佈了47 篇原創文章 · 獲贊 31 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章