linux 下的 DL庫 函式

2021-05-23 04:52:23 字數 880 閱讀 7244

包含標頭檔案:

#include

函式定義

void * dlopen( const char * pathname, int mode );

函式描述:

在dlopen的()函式以指定模式開啟指定的動態連線庫檔案,並返回乙個控制代碼給呼叫程序。使用dlclose()來解除安裝開啟的庫。

mode:分為這兩種

rtld_lazy 暫緩決定,等有需要時再解出符號

rtld_now 立即決定,返回前解除所有未決定的符號。

rtld_local

rtld_global 允許匯出符號

rtld_group

rtld_world

返回值:

開啟錯誤返回null

成功,返回庫引用

編譯時候要加入 -ldl (指定dl庫)

例如 gcc test.c -o test -ldl

2.   dlclose();函式原型為: int dlclose (void *handle); 

dlclose用於關閉指定控制代碼的動態鏈結庫,只有當此動態鏈結庫的使用計數為0時,才會真正被系統解除安裝。

3.   dlerror();函式原型為: const char *dlerror(void); 當動態鏈結庫操作函式執行失敗時,dlerror可以返回出錯資訊,返回值為null時表示操作函式執行成功。

4.    dlsym()的函式原型是

void* dlsym(void* handle,const char* symbol)

該函式在檔案中。

Linux系統下C 標準庫函式

標頭檔案 include 函式名作用isalnum 測試字元是否為英文本母或數字 isalpha 測試字元是否為英文本母 isascii 測試字元是否為ascii碼字元 isblank 測試字元是否為空白字元 包括空格 r n t 符號 iscntrl 測試字元是否為ascii碼的控制字元 isdi...

在Linux下如何使用自己的庫函式

一使用庫必要性 提高 重用性。二庫的種類 1 靜態庫 一般以 a命名。程式編譯時被載入,此後,只要程式不被重新編譯,靜態庫就沒有作用了 可以刪掉 由於靜態庫的 在編譯過程中已經被載入可執行程式,因此體積較大,如果有多個應用程式都用了同乙個靜態庫,在存放可執行程式的硬碟中就會有這個靜態庫的多份拷貝。如...

Python下的系統庫函式

python的字串內建函式 s asdffdg s.islower true 方法 描述 string.capitalize 把字串的第乙個字元大寫 string.center width 返回乙個原字串居中,並使用空格填充至長度 width 的新字串 string.count str,beg 0,...