最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Linux動態(tài)庫函數(shù)的詳解

 更新時間:2017年10月31日 15:35:52   作者:walkingman321  
這篇文章主要介紹了Linux動態(tài)庫函數(shù)的詳解的相關資料,希望通過本文能幫助到大家,讓大家理解掌握這部分的內(nèi)容,需要的朋友可以參考下

Linux動態(tài)庫函數(shù)的詳解

加載動態(tài)庫

void *dlopen(const char *filename, int flag);

flag的可能值:

  •         RTLD_LAZY
  •         RTLD_NOW
  •         RTLD_GLOBAL
  •         RTLD_LOCAL
  •         RTLD_NODELETE (since glibc 2.2)
  •         RTLD_NOLOAD (since glibc 2.2)
  •         RTLD_DEEPBIND

這些flag的具體含義可使用man查看

返回動態(tài)庫中最近的一次錯誤

char *dlerror(void);

根據(jù)動態(tài)庫句柄和函數(shù)名稱,返回函數(shù)的地址

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

如果使用dlopen(NULL, <flag>)得到句柄,通過這個句柄可以查找所有函數(shù)符號,只要那個函數(shù)符號所在的dll在加載時指定了RTLD_GLOBAL 

關閉動態(tài)庫

int dlclose(void *handle);

根據(jù)函數(shù)地址,返回函數(shù)名稱和其它信息

注意傳入地址只要落在函數(shù)代碼空間范圍之內(nèi)即可,不需要是函數(shù)的起始地址

int dladdr(void *addr, Dl_info *info);
 
typedef struct {
   const char *dli_fname;/* Filename of defining object */
   void *dli_fbase;   /* Load address of that object */
   const char *dli_sname;/* Name of nearest lower symbol */
   void *dli_saddr;   /* Exact value of nearest symbol */
  } Dl_info;

 構(gòu)造函數(shù)和析構(gòu)函數(shù)(這兩個是屬性,而不是函數(shù))

__attribute__((constructor))
__attribute__((destructor))

例如:

__attribute__((constructor)) void before_main() 
{ 
    printf("before main/n"); 
} 
 
__attribute__((destructor)) void after_main() 
{ 
  printf("after main/n"); 
} 

如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關文章

  • shell腳本實現(xiàn)快速生成xml格式sitemap實例分享

    shell腳本實現(xiàn)快速生成xml格式sitemap實例分享

    這篇文章主要介紹了shell腳本實現(xiàn)快速生成xml格式sitemap實例分享,只是本文的腳本首先需要一個創(chuàng)建好的URL集合文件,也就是數(shù)據(jù)源才可以生成,需要的朋友可以參考下
    2014-12-12
  • 用expect實現(xiàn)ssh自動登錄服務器并進行批量管理的實現(xiàn)方法

    用expect實現(xiàn)ssh自動登錄服務器并進行批量管理的實現(xiàn)方法

    這篇文章主要介紹用expect實現(xiàn)ssh自動登錄服務器并進行批量管理的實現(xiàn)方法,需要的朋友可以參考下
    2013-02-02
  • Linux服務器硬件運行狀態(tài)及故障郵件提醒的監(jiān)控腳本分享

    Linux服務器硬件運行狀態(tài)及故障郵件提醒的監(jiān)控腳本分享

    這篇文章主要介紹了Linux服務器硬件運行狀態(tài)及故障郵件提醒的監(jiān)控腳本分享,能夠測試CPU和內(nèi)存的占用狀況以及HTTP端的異常,需要的朋友可以參考下
    2016-03-03
  • Shell腳本數(shù)組用法小結(jié)

    Shell腳本數(shù)組用法小結(jié)

    這篇文章主要介紹了Shell腳本數(shù)組用法小結(jié),本文講解了數(shù)組聲明、數(shù)組遍歷、獲取數(shù)組長度、刪除數(shù)組元素、數(shù)組切片等內(nèi)容,需要的朋友可以參考下
    2014-09-09
  • 詳解Linux常用的四種壓縮命令

    詳解Linux常用的四種壓縮命令

    這篇文章主要詳細介紹了Linux常用的四種壓縮命令,tar命令,gzip命令,rar命令和zip命令,并通過代碼示例給大家講解的非常詳細,具有一定的參考價值,需要的朋友可以參考下
    2024-03-03
  • shell腳本監(jiān)控mysql主從狀態(tài)

    shell腳本監(jiān)控mysql主從狀態(tài)

    這篇文章主要介紹了shell腳本監(jiān)控mysql主從狀態(tài),如果異常則郵件警告,需要的朋友可以參考下
    2014-05-05
  • shell腳本function傳參的具體使用

    shell腳本function傳參的具體使用

    本文主要介紹了shell腳本function傳參的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-04-04
  • 淺談vim的四種模式及模式切換

    淺談vim的四種模式及模式切換

    下面小編就為大家?guī)硪黄獪\談vim的四種模式及模式切換。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • Linux下有名管道m(xù)kfifo使用詳解

    Linux下有名管道m(xù)kfifo使用詳解

    有名管道用于非親緣關系進程之間的通訊,創(chuàng)建有名管道使用到的庫函數(shù)是mkfifo(),這里強調(diào)是庫函數(shù)的原因是,mkfifo同時也是一個用戶指令,這篇文章主要介紹了Linux下有名管道m(xù)kfifo使用,需要的朋友可以參考下
    2023-07-07
  • 簡單的遠程FTP定時備份Shell腳本分享

    簡單的遠程FTP定時備份Shell腳本分享

    這篇文章主要介紹了簡單的遠程FTP定時備份Shell腳本分享,,需要的朋友可以參考下
    2014-07-07

最新評論

石泉县| 凉城县| 西贡区| 拉孜县| 泰宁县| 全椒县| 安宁市| 定襄县| 杂多县| 如东县| 武定县| 石渠县| 仁寿县| 邓州市| 准格尔旗| 赞皇县| 宽城| 福贡县| 随州市| 灯塔市| 城固县| 鄄城县| 辽中县| 岐山县| 嘉善县| 庆城县| 横峰县| 哈尔滨市| 东台市| 台中县| 通渭县| 桐城市| 惠水县| 景德镇市| 佛坪县| 嵊州市| 德保县| 金平| 聊城市| 武邑县| 光泽县|