1樓:陽光上的橋
一般沒什麼區別,多數庫函式實際上一般最終都是通過系統呼叫實現的,另外那些庫函式完成字串比較等功能,你自己也可以編寫。
使用系統呼叫的好處在於,不增加可執行程式的大小,即使你把系統的功能呼叫完,你的程式也不大。
使用系統呼叫的另外乙個好處,以後換其它語言寫程式也能很快得心應手。
請說明庫函式呼叫和系統呼叫的區別
2樓:人人
庫函式是語言本身的一部分,而系統函式是核心提供給應用程式的介面,屬於系統的一部分。
函式庫呼叫是語言或應用程式的一部分,而系統呼叫是作業系統的一部分。
使用者應用程式訪問並使用核心所提供的各種服務的途徑即是系統呼叫。在核心和使用者應用程式相交界的地方,核心提供了一組系統呼叫介面,通過這組介面,應用程式可以訪問系統硬體和各種作業系統資源。
1.系統呼叫是為了方便應用使用作業系統的介面,而庫函式是為了方便人們編寫應用程式而引出的,比如你自己編寫乙個函式其實也可以說就是乙個庫函式。
2.系統呼叫可以理解為核心提供給我們在使用者態用的介面函式,可以認為是某種核心的庫函式。
就是系統呼叫,而fread就是c標準庫函式。
linux作業系統 什麼是系統呼叫?什麼是庫函式?二者有何區別?
3樓:網友
系統呼叫樓上說的比較詳細了,那我說下庫函式和系統呼叫的區別:
人們在長期程式設計中發現使用系統呼叫有個重大的缺點,那就程式的移植性,比如說:linux系統提供的系統呼叫的函式和windows就不一樣,2者不單單是實現的方式不同,提供給使用者的函式名,引數都不同,這個可以理解。因此乙個實現好的程式,利用了linux的系統呼叫譬如說wait4函式,那麼他在windows上編譯是通不過的。
於是人們想了個辦法,就是封裝了windows和linux系統呼叫,給大家乙個統一的函式(我習慣叫它介面),那麼這樣程式的移植性問題就解決了。
所以可以這麼認為庫函式是對系統呼叫的封裝(不是所有的庫函式都是),為的是解決一些公共的問題和提供統一的系統呼叫的介面,他和系統呼叫的優缺點就是:系統呼叫速度是明顯要快於庫函式(並不一定全部是,但絕大部分是),但系統呼叫缺乏移植性。庫函式速度要慢,但解決了移植問題。
這些在開發過程中要根據自己的實際情況來決定使用那乙個。
庫函式呼叫和系統呼叫的區別是什麼
庫函式是語言本身的一部分,而系統函式是核心提供給應用程式的介面,屬於系統的一部分。函式庫呼叫是語言或應用程式的一部分,而系統呼叫是作業系統的一部分。使用者應用程式訪問並使用核心所提供的各種服務的途徑即是系統呼叫。在核心和使用者應用程式相交界的地方,核心提供了一組系統呼叫介面,通過這組介面,應用程式可...
C 中的系統庫函式和標準庫函式到底有什麼區別啊
一個是商家自行開發,一個是語言標準的函式庫 系統呼叫與庫函式和實用程式有什麼區別 初學c語言,函式庫和庫函式有什麼區別,都是什麼意思?c語言本身只是一個規則 即你寫 int a 1 就是定義了一個整形值a,初始化為1。你寫printf 就是呼叫輸出函式。我說這些 的意思是,c語言本身很簡單,它只是一...
一道C語言程式求解(使用函式呼叫)
主要就是階乘函式的定義。include long fac int n int main c語言程式函式呼叫讀寫 fopen的第二個引數,指定了檔案操作型別a r 是隻讀。b r 是可讀 可寫。c rb 是二進位唯讀。d w 是隻寫。所以 b正確。一道c語言選擇題求解!函式呼叫 strcat strc...