c語言預(yù)處理指令可以放在哪 預(yù)處理命令行必須位于C源程序的起始位置嗎?
預(yù)處理命令行必須位于C源程序的起始位置嗎?預(yù)處理命令是以“#”號開頭的命令,它們又不是C語言的可不能執(zhí)行命令,這些命令應(yīng)該在函數(shù)之外字跡,好象在源文件的最前面書寫,稱做預(yù)處理部分。在C編譯系統(tǒng)編譯器源
預(yù)處理命令行必須位于C源程序的起始位置嗎?
預(yù)處理命令是以“#”號開頭的命令,它們又不是C語言的可不能執(zhí)行命令,這些命令應(yīng)該在函數(shù)之外字跡,好象在源文件的最前面書寫,稱做預(yù)處理部分。在C編譯系統(tǒng)編譯器源程序之前,先要對源程序中的預(yù)處理命令接受處理,處理完畢之后才能對源程序通過編譯。在全屏幕編輯環(huán)境下,預(yù)處理是在編譯之前自動由系統(tǒng)如何處理的。只不過大多數(shù)程序都用這個printf函數(shù),而這個函數(shù)的頭文件是“stdio.h”,因為好象要除了上。
c 的前三步分別是什么文件?
最后一個階段:預(yù)處理階段,在開始的編譯階段之前接受。預(yù)處理階段將根據(jù)已儲放在文件中的預(yù)處理指令來可以修改源文件的內(nèi)容。如#include指令是一個預(yù)處理指令,它把頭文件的內(nèi)容添加到.c或.cpp文件中。
第二個階段:編譯、360優(yōu)化階段,將其漢語翻譯成等價關(guān)系的中間代碼表示或匯編代碼,并執(zhí)行360優(yōu)化。
第三個階段:匯編,把匯編語言代碼翻譯成成目標(biāo)機器指令。
源代碼文件:.c;
目標(biāo)代碼文件:.params;
可執(zhí)行文件:.exe;
.c文件compile后生成沉淀.elem文件;
.params文件link后生成.exe文件。
C運行原理?
計算機不能然后識別和執(zhí)行高級語言寫的命令,必須用編譯程序(也稱編譯器)把C源程序翻譯成成二進制形式的目標(biāo)程序,接著再將該目標(biāo)程序與系統(tǒng)的函數(shù)庫在內(nèi)其他目標(biāo)程序連接上起來,無法形成可執(zhí)行的目標(biāo)程序
C語言的編譯和執(zhí)行是需要先執(zhí)行100元以內(nèi)步驟和方法
上機操作輸入輸入和編輯源程序:按照鍵盤向計算機再輸入程序,如發(fā)現(xiàn)到有錯誤,要有則改之無則加勉。文件以.c另外后綴,生成源程序文件,如f.c。
對源程序進行程序編譯:先用C編譯系統(tǒng)可以提供的#34預(yù)處理器#34(又稱#34預(yù)處理程序#34或#34預(yù)編譯器#34)對程序中的預(yù)處理指令通過代碼編譯預(yù)處理。的或,對#includeltstdio.hgt指令來說,應(yīng)該是將stdio.h頭文件內(nèi)容讀沖進來,完全改變#includeltstdio.hgt行。由預(yù)代碼編譯換取的信息與程序其他部分在一起,分成另一個求完整的、這個可以利用并且宣布編譯器的源程序,接著由編譯系統(tǒng)對該源程序參與程序編譯。
編譯程序的作用必須對源程序進行檢查,查看是否存在語法方面的錯誤,未知向編程人員出現(xiàn)錯誤。如果不必然語法錯誤,這時,編譯程序不自動把源程序可以轉(zhuǎn)換為二進制自然形成的目標(biāo)程序(在VisualC中程序格式為.params,或者f.obj)
在用程序編譯系統(tǒng)對源程序通過編譯時,自動除開了預(yù)代碼編譯和開始編譯兩個階段,用戶無須四個能發(fā)出四次指令
通過直接連接去處理:在編譯能夠得到的二進制目標(biāo)文件(后綴為.object)還不能不能供計算機就執(zhí)行。前面已那就證明:一個程序可能會乾坤二卦若干個源程序文件,而編譯是以源程序文件為對象的,一次編譯程序沒有辦法能得到與一個源文件相隨機的目標(biāo)文件(也稱目標(biāo)模塊),它只是整個程序的一部分??梢园阉械木幾g后能得到的目標(biāo)模塊直接連接裝配起來,再與函數(shù)庫相再連接成一個整體,生成一個可供計算機負責(zé)執(zhí)行的目標(biāo)程序,稱做可執(zhí)行程序(在VisualC中后綴為.exe,如f.exe)
況且一個程序只中有一個源程序文件,程序編譯后的目標(biāo)程序也不能就不運行,也要經(jīng)連接上階段,因為要與函數(shù)庫進行直接連接,才能生成沉淀可執(zhí)行程序
以上工作也是由一個稱為#34連接到編輯程序(linkageeditor)#34的軟件來實現(xiàn)的
運行可執(zhí)行程序,能夠得到運行結(jié)果:將可執(zhí)行程序.exe鍵入到計算機,并使之啟動,換取結(jié)果