一、gcc對c程式的編譯命令為:
gcc 源檔名 -o 目標檔名2、編譯:將.i檔案生成.s檔案。1、預處理:將.c檔案生成.i檔案。
.c-->.i命令為:
gcc a.c -o a.i -e
.i-->.s命令為:
gcc a.i -o a.s -e3、彙編:將.s檔案生成.o檔案。
.s-->.o命令為:
gcc a.s -o a.o -c.o-->(可執行檔案):
gcc a.o -o a二、下面寫乙個例子程式來具體看一下步驟:
/**示例:test.c**/
#include #define max 3
int main(void)
三、圖示:
1、執行gcc test.c -o test.i -e命令生成test.i檔案,再用cat test.i命令檢視,如下:
可見這一步只是將程式中的max替換成了巨集定義中定義的數3,這是乙個預處理的步驟。
2、執行gcc test.i -o test.s -s命令生成彙編源程式:
assembler source就是彙編源程式的意思。
有趣的除錯過程
有人說,程式設計師寫 的能力一定要強,如果寫 不行,錯誤百出,那他除錯能力一定要強。總之,兩個優勢中至少要占有乙個,否則寫 又爛,自己又改正不了,豈不是糟糕至極。本人不才,寫 經常丟東拉西,每次檢查自己的程式,幾乎都能發現新的bug。在驚喜不斷的同時,也鍛鍊了我臨危不懼的神經。開始我很害怕發現程式的...
關於程式除錯過程的回顧與總結
正式參加程式設計除錯開始於2013年10月左右,從開始查詢源 到自己程式設計完成一些諸如com,socket通訊等等一些工作,到今天為止我才發現自己在程式設計除錯根本就沒有入門。可悲可嘆。哈哈,也幸虧是今天我重新開啟了一條新的陽光大道。現在我想對問題做一理論層次的總結,不談具體工作。當然這是給自己看...
利用IDA對dex檔案進行動態除錯過程
0x01.除錯的過程。1 首先androidmanifest.xml裡面 android debuggable true 2 將classes.dex拖入ida中。3 選擇debugger debugger options set specific options,在package name和act...