本文試圖以比較簡潔的方式創建lib:
只求能夠把lib用起來,並不會加上【很多但必須的東西,比如我們之前說過的#ifndef #define 和#endif】
打開vs
創建一個新的項目:
點擊確定
然后添加 -> 新建項
這個名稱很關鍵: main.c
Main.c的內容:
int myMultiple(int a, int b){ return a*b; }
/*
這是因為如果使用,main.cpp的話,這個文件就會以cpp的形式編譯,這樣的話,還要有另外的語法extern格式來限定。所以我們在創建的時候倒不如直接寫main.c。這樣省一步事兒。
C語言可以操作很多東西,很多人用它來寫操作系統,這是因為 C語言可以直接操作硬件,對於很多上層語言來說,他們理論上不具有 這樣的能力,或者即使有,也很復雜,寫起來很麻煩,所以 C語言在一定程度上用來專門書寫這種靜態庫文件lib和 動態庫文件dll。
所以這里想說的是就寫main.c 就可以啦!!!
非要寫main.cpp的話,要這樣包一層:
extern "C" //在C++語言當中,extern "C"告訴編譯器,用C語言的方式編譯這個函數 { int myMultiple(int a, int b){ return a*b; } }
*/
然后去 項目->屬性->配置屬性->配飾類型 修改成 靜態庫(.lib.)
然后新建一個項目showLib_Use,來使用這個 lib。
添加-> 新建項
這個時候 注意 先用main.c 創建
然后生成
Main.c 的內容:
#include <stdio.h> #pragma comment(lib,"showLib.lib") int myMultiple(int, int); int main(){ printf("lifei\n"); printf("%d", myMultiple(2, 3)); getchar(); return 0; }
在此之前需要先把 showLib.lib放到靜態時候要在編譯時候使用它的文件目錄下面。
看了我的幾個例程發現我都只是用.c文件實現了 lib的加載 然后 用 .cpp 文件和.c實現了 dll的加載。
//苦惱中。。。求高玩幫忙解答下