欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

dev-c++創(chuàng)建lib(靜態(tài)鏈接庫)文件的實現步驟

 更新時間:2022年06月10日 15:47:00   作者:nnKevi  
本文主要介紹了dev-c++創(chuàng)建lib(靜態(tài)鏈接庫)文件的實現步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

雖說dev-c++適合初學者,但是它的功能還是很強大的。那如何用它制作一個lib(靜態(tài)鏈接庫)呢?

第一步:制作靜態(tài)鏈接庫

1.打開dev-c++,選擇“新建-項目”,如下圖所示。

2.選擇“Static Library”,并選擇編程語言(c和c++無所謂)以及給項目設置名稱。

3.選擇你要保存的位置。

4.在新建的文件里添加函數,我這里添加了兩個:一個叫hello,用來彈出一個對話框;一個叫add,返回兩個數的和。

5.保存文件(文件名可以隨便選,我這里選擇了main.cpp)

6.點擊“編譯”按鈕。

 編譯完成后,可能會出現以下界面:

這時,有人會覺得很奇怪:“我的程序沒問題呀,為什么它報錯呢?????”

仔細一看,它只不過是把使用的命令給顯示了一遍,而不是報錯。

7.在生成的文件中找到一個.a文件(我這里是hello.a,因為項目名是hello,你的可能不一樣),這就是生成的靜態(tài)鏈接庫文件。

第二步:鏈接靜態(tài)鏈接庫

庫做好了,但是我們編程的時候怎么用它呢?方法就是鏈接。在自己的代碼中鏈接靜態(tài)鏈接庫,有兩種方法,各有優(yōu)劣。

方法一:使用項目

1.新建一個console application項目。(不能是源代碼,必須是console application,如果你像我一樣不喜歡console application,請使用方法二)

2.選擇保存位置。

 3.打開“項目屬性 -> 參數”。

4.點擊“加入庫或對象”,把剛才的庫加進去。

5.點擊“確定”,大功告成!

優(yōu)點:

1.只有這個項目的文件才會鏈接該庫,別的文件不會。

2.網上比較常見。

缺點:

1.只能新建console application,不能新建源代碼。(說實話,我非常不喜歡console application)

因此,這種方法適合鏈接不太常用的庫。

方法二:修改編譯選項

1.將自己的庫重命名,命名為“libxxx.a”,例如“libhello.a”。

2.新建一個源代碼(這回不用console application了,我好開心!) 

3.打開“工具 -> 編譯選項。”

4.找到“在連接器命令行加入以下命令”,在那個框里加入以下命令(如果框里已經有命令了,就在末尾加一個空格,再輸入下面的命令):

-l你的庫名(去掉開頭的lib和結尾的.a)

 舉個例子:我的庫名是libhello.a(見第1步),那么我應該加上命令:

-lhello

注意,以下3種寫法都是錯誤的:

-llibhello.a
-llibhello
-lhello.a

再比如,你的庫名是libtest.a,你應該加上: 

-ltest

示例圖(以我的庫為例):

能不能在-l和庫名之間加一個空格呢?當然可以!

5.還沒完!找到“目錄 -> 庫”。

6.把你的庫的路徑添加進去。怎么添加?點擊右下角的“瀏覽”按鈕,找到庫的路徑,點“確定”。

7.點“添加”,再點“確定”,OK!

優(yōu)點:

1.可以新建源代碼,而不是我討厭的console application。。。  

缺點:

1.每次會自動鏈接該庫,導致可執(zhí)行文件體積巨大。

2.網上不常見,遇到了問題很難解決。

因此,這種方法適合經常使用的庫。

第三步:使用庫函數

萬事俱備,只欠東風!庫也造好了,鏈接也鏈接了,就差調用庫函數了!怎么調用呢?還是有兩種方法。

注意:如果你是在console application中鏈接靜態(tài)鏈接庫,則你只能在項目文件中調用庫函數;如果你修改了編譯選項,則每一個程序都可以調用庫函數!

方法一

1.在需要調用庫函數的代碼里,寫出庫函數的函數原型。(必須寫函數原型,否則會報錯!)

 2.直接調用函數即可。(下圖為完整代碼)

#include <cstdio>
void hello();
int add(int a,int b);
int main(){
	printf("%d",add(1,2));
	hello();
	return 0;
}

運行效果:

優(yōu)點:操作簡單。

缺點:只有你自己知道函數原型,如果別人使用此函數,就不得不向你詢問函數原型。

因此這種方法適合自己使用庫函數。

方法二:

1.把函數原型寫在一個頭文件里。

 2.引入頭文件,就可以使用庫函數了!

優(yōu)點:別人可以知道函數原型。

缺點:比較麻煩。

因此,這種方法適合共享給別人。

到此這篇關于dev-c++創(chuàng)建lib(靜態(tài)鏈接庫)文件的實現步驟的文章就介紹到這了,更多相關dev-c++創(chuàng)建lib內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 詳解C/C++ 的*和&用法

    詳解C/C++ 的*和&用法

    這篇文章主要介紹了C/C++ 的*和&的相關知識,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • 詳解C語言如何實現雙向帶頭循環(huán)鏈表

    詳解C語言如何實現雙向帶頭循環(huán)鏈表

    雙向帶頭循環(huán)鏈表應該是鏈表中非常方便的一種,可以很容易的在任意位置上進行插入和刪除,可以很容易的對鏈表進行管理。本文將利用C語言實現雙向帶頭循環(huán)鏈表,需要的可以參考一下
    2022-08-08
  • VC對自定義資源加密解密(AES)的詳解

    VC對自定義資源加密解密(AES)的詳解

    本篇文章是對VC對自定義資源加密解密(AES)進行了詳細的分析介紹,需要的朋友參考下
    2013-06-06
  • C語言實現小貓釣魚游戲

    C語言實現小貓釣魚游戲

    這篇文章主要為大家詳細介紹了C語言實現小貓釣魚游戲,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • C++實現單例模式的方法

    C++實現單例模式的方法

    這篇文章主要為大家介紹了C++實現單例模式的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • Qt實現字幕滾動效果的示例代碼

    Qt實現字幕滾動效果的示例代碼

    這篇文章主要介紹了Qt如何利用QTimer實現字幕滾動功能,并且可以實現自行更改文本內容、自適應文本大小、自由調整速度等功能,感興趣的可以學習一下
    2022-06-06
  • c語言實現詞頻統(tǒng)計的簡單實例

    c語言實現詞頻統(tǒng)計的簡單實例

    下面小編就為大家?guī)硪黄猚語言實現詞頻統(tǒng)計的簡單實例。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-09-09
  • 詳解C++中的內聯函數和函數重載

    詳解C++中的內聯函數和函數重載

    這篇文章主要介紹了詳解C++中的內聯函數和函數重載,是C++入門學習中的基礎知識,需要的朋友可以參考下
    2015-09-09
  • c++類型轉換及RTTI運行階段類型識別

    c++類型轉換及RTTI運行階段類型識別

    這篇文章主要為大家介紹了c++類型轉換及RTTI運行階段類型識別詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2023-05-05
  • C++示例分析內聯函數與引用變量及函數重載的使用

    C++示例分析內聯函數與引用變量及函數重載的使用

    為了消除函數調用的時空開銷,C++ 提供一種提高效率的方法,即在編譯時將函數調用處用函數體替換,類似于C語言中的宏展開。這種在函數調用處直接嵌入函數體的函數稱為內聯函數(Inline Function),又稱內嵌函數或者內置函數
    2022-08-08

最新評論