1.編譯器**優化分別優化了哪些
**調整
新的視角:新的視角強調的重點是針對問題的演算法;即選擇和構造適合於問題的演算法
表驅動狀態機:將問題抽象為另一種等價的數學模型或假想機器模型
2.總結gcc靜態庫和動態庫的製作
動態庫製作(.so)
gcc -shared -fpic -o lib/libadd.so src/add.c1
或者gcc -fpic -c src/add.c
gcc -shared -o libadd.so add.o 12
使用共享庫(加-wl和rpath)
gcc src/main.c -llib -ladd -o main -wl,-rpath=lib 1
修改ld_library_path
export ld_library_path=~/test/lib:$ld_library_path1
使用ldconfig
//把庫放到標準路徑
cp ~/test/lib/libadd.so /usr/lib
chmod 0775 /usr/lib/libadd.so
//更新快取
ldconfig
gcc src/main.c -llib -ladd -o main 123456
-fpic:編譯動態庫必須,輸出不依賴位置的**
-shared:編譯動態庫必須選項
-wi:向linker傳入一些引數
靜態庫製作
gcc -c src/add.c -o add.o //製作obj檔案
ar -crv lib/libadd.a add.o //製作歸檔檔案
gcc src/main.c -llib -ladd -o main //加上l(指明鏈結目錄) l(指明鏈結庫名)
3.總結cmake用法
用cmake建立可執行檔案
多源檔案目錄
用cmake建立動態庫和靜態庫
呼叫動態庫和靜態庫
P2 單鏈表操作 實習作業
include include include include include include include include 定義結點型別 struct node node head 頭結點 node heada node headb node dllist,a,b 頭指標 int t times...
2013 7 15學習作業
題目1 int a 3 a 0 0 a 1 1 a 2 2 int p,q p a q a 2 a q p 的值是多少?為什麼?include using namespace std int main int argc,const char ar 題目2 const 有什麼用途?請用附上 例子佐證 ...
預習作業3
1.常用小技巧 tab 補全命令 補全目錄 補全命令引數 ctrl c 終止當前執行的程式,但不結束終端 ctrl d 結束輸入或退出終端 ctrl s 暫停當前程式,任意鍵恢復 ctrl z 將當前程式放入後台 命令fg恢復前台 ctrl a 將游標移至輸入行頭 相當於home ctrl e 將游...