**如下:
執行結果如下:
二.彙編指令的編譯過程
通常在windows下,我們在vc或vs下進行程式的編輯與執行,往往不會想到程式到底是如何執行的,其實它並非我們想的那麼簡單,而是通過 預處理階段,編譯階段
彙編階段,連線階段,所以也是比較複雜的。下面我們就看看如何在linux下運用彙編指令進行編譯以及執行程式。
test1.c檔案:
#includeint main()
test2.c檔案:
#includemy_printf()
但是我們如何才能執行該程式呢?首先我們先建立乙個makefile檔案,然後寫明依賴關係即可。
下面就為該依賴關係:
首先make一下指令,然後執行程式。既./test
結果如下:
下面我們就通過這張圖來了解程式是如何編譯和執行的。
原始檔(.c)——彙編檔案(.s)——目標檔案(.o)——可執行檔案(*.hello)
預處理---編譯---彙編---鏈結
1.預處理階段 主要完成了標頭檔案及巨集的替換…(.c檔案生成.i檔案) gcc -e hello.c -o hello.i
2.編譯階段 源**到彙編**的轉換,輸出彙編**(.i檔案生成.s檔案) gcc -s hello.i -o hello.s
3.彙編階段 是由組合語言生成機器語言並輸出目標檔案(.s檔案生成.o檔案) gcc -c hello.s -o hello.o
4.鏈結階段 將以上生成的檔案生成乙個可執行的程式 gcc -o (hello.i/hello.s/hello.o) -o hello
-o, 指定輸出檔名,可以配合以上三種標籤使用。
-o 引數可以被省略,這種情況下編譯器將使用預設名稱輸出.無標籤情況會生成名為a.out的可執行檔案。
gcc -o (hello.i/hello.s/hello.o) -o hello
-o(大寫的字母o),編譯器對**進行自動優化編譯,輸出效率更高的可執行檔案。
-o 後面還可以跟上數字指定優化級別,如:gcc -o2 source_file.c數字越大,越加優化。
C 進度條 呼叫儲存過程進度條的製作
c 呼叫儲存過程 緣由 因做核銷系統為了使資料更新更快,所以設計時把更新及資料聯動做成了儲存過程.但是呼叫時儲存過程無法得到實時的進度,軟體執行儲存過程有時候一分多鐘,客戶端看起來無響應,那麼如何做呢.實現方法 那麼我們可以做乙個假的進度條,讓程式在後台執行,進度條在前台顯示,這樣更人性化一些.儲存...
在Linux下用make指令編譯進度條程式。
首先建立乙個新的檔案,touch progress bar.c 執行該vim progress bar.c命令,寫進度條的程式。寫進乙個進度條程式 include include include void progress printf n int main 如圖 該 中需要注意的小細節 1.con...
css純手寫橫向進度條和圓形進度條
1.在style.scss裡面封裝樣式 進度條 橫向或圓形 type 1 橫向 2 圓形 nocolor 初始顏色 yescolor 過去的顏色 mixin progress type 2,height 5,nocolor ffb386,yescolor ccc,width 70,top 0.2,r...