c語(yǔ)言編譯過(guò)程5步驟 C語(yǔ)言編輯編譯連接的作用是什么?
C語(yǔ)言編輯編譯連接的作用是什么?1編輯:是編寫(xiě)代碼或修改代碼,生成C語(yǔ)言源文件和頭文件。2編譯:編譯器將C語(yǔ)言源文件轉(zhuǎn)換為二進(jìn)制中間文件。在此步驟中,將處理文件中的語(yǔ)法和語(yǔ)義。如果存在編譯錯(cuò)誤,則無(wú)法
C語(yǔ)言編輯編譯連接的作用是什么?
1編輯:是編寫(xiě)代碼或修改代碼,生成C語(yǔ)言源文件和頭文件。2編譯:編譯器將C語(yǔ)言源文件轉(zhuǎn)換為二進(jìn)制中間文件。在此步驟中,將處理文件中的語(yǔ)法和語(yǔ)義。如果存在編譯錯(cuò)誤,則無(wú)法執(zhí)行后續(xù)操作。3鏈接:將2中生成的中間文件合并為二進(jìn)制可執(zhí)行文件。此步驟將檢查文件之間的關(guān)聯(lián)。如果出現(xiàn)錯(cuò)誤,將不會(huì)生成可執(zhí)行文件,并且無(wú)法執(zhí)行。執(zhí)行:運(yùn)行可執(zhí)行文件,這是編寫(xiě)代碼的最終目標(biāo)。以上四個(gè)步驟都依賴(lài)于前一個(gè)步驟,這是一個(gè)從高級(jí)語(yǔ)言(C語(yǔ)言)到機(jī)器語(yǔ)言(可執(zhí)行文件)的漸進(jìn)過(guò)程。廣義編譯包括兩個(gè)部分:編譯鏈接。
既然Python是用C實(shí)現(xiàn)的,那為什么Python不能直接生成exe呢?
C語(yǔ)言實(shí)際上是一種“老”和“底層”語(yǔ)言。其執(zhí)行效率僅次于匯編語(yǔ)言。
它之所以古老是因?yàn)镃語(yǔ)言出現(xiàn)得很早。
盡管FORTRAN和COBOL比C語(yǔ)言出現(xiàn)得早,但現(xiàn)代主流操作系統(tǒng)(windows、Mac OS、Linux、IOS、Android、Unix)都是從C語(yǔ)言中誕生的。
最根本的原因是C語(yǔ)言被設(shè)計(jì)用來(lái)同時(shí)編寫(xiě)匯編語(yǔ)言。從理論上講,它可以用外匯來(lái)表示。匯編語(yǔ)言是最有效的語(yǔ)言。
所以Python是用C語(yǔ)言編寫(xiě)的也就不足為奇了。它與能否生成exe無(wú)關(guān)。
Exe文件是Windows平臺(tái)的專(zhuān)用格式。最簡(jiǎn)單的exe是com可執(zhí)行文件。EXE文件實(shí)際上由引導(dǎo)加載程序和解釋器組成。
由Python語(yǔ)言生成的代碼只能通過(guò)引導(dǎo)加載程序和解釋器作為EXE文件執(zhí)行。
因此Python生成EXE文件并不困難。只是它是否愿意提供的問(wèn)題。