欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

C程序格式原理?

源程序。(或者叫源代碼、源文件)源程序(sourcecode)是指未編譯的按照一定的程序設(shè)計(jì)語言規(guī)范書寫的文本文件。源代碼(也稱源程序),是指一系列人類可讀的計(jì)算機(jī)語言指令。在程序語言中,源代碼可以是以書籍或者磁帶的形式出現(xiàn),但最為常用的格式是文本文件,這種典型格式的目的是為了編譯出計(jì)算機(jī)程序。

計(jì)算機(jī)源代碼的最終目的是將人類可讀的文本翻譯成為計(jì)算機(jī)可以執(zhí)行的二進(jìn)制指令,這種過程叫做編譯,通過編譯器完成。C語言源代碼即用C語言編寫的一類可讀的計(jì)算機(jī)語言指令。

原理:c程序如何從文本文件中讀取數(shù)據(jù)?比如編程從某一個(gè)后綴.txt的文件讀取數(shù)據(jù)并在終端框中顯示,在頭文件“stdio.h”中有FILE結(jié)構(gòu)類型的聲明,編寫程序時(shí)建立指針與文件之間的聯(lián)系,一般會(huì)設(shè)置一個(gè)FILE*fp1;的指針指向要打開的文件,然后通過指針對(duì)文件進(jìn)行讀寫。

編譯共分為四個(gè)階段:預(yù)處理階段、編譯階段、匯編階段、鏈接階段。

1、預(yù)處理階段:主要工作是將頭文件插入到所寫的代碼中,生成擴(kuò)展名為“.i”的文件替換原來的擴(kuò)展名為“.c”的文件,但是原來的文件仍然保留,只是執(zhí)行過程中的實(shí)際文件發(fā)生了改變。

(這里所說的替換并不是指原來的文件被刪除)

2、匯編階段:插入?yún)R編語言程序,將代碼翻譯成匯編語言。

編譯器首先要檢查代碼的規(guī)范性、是否有語法錯(cuò)誤等,以確定代碼的實(shí)際要做的工作,在檢查無誤后,編譯器把代碼翻譯成匯編語言,同時(shí)將擴(kuò)展名為“.i”的文件翻譯成擴(kuò)展名為“.s”的文件。

3、編譯階段:將匯編語言翻譯成機(jī)器語言指令,并將指令打包封存成可重定位目標(biāo)程序的格式,將擴(kuò)展名為“.s”的文件翻譯成擴(kuò)展名為“.o”的二進(jìn)制文件。

4、鏈接階段:在示例代碼中,改代碼文件調(diào)用了標(biāo)準(zhǔn)庫中printf函數(shù)。

而printf函數(shù)的實(shí)際存儲(chǔ)位置是一個(gè)單獨(dú)編譯的目標(biāo)文件(編譯的結(jié)果也是擴(kuò)展名為“.o”的文件),所以此時(shí)主函數(shù)調(diào)用的時(shí)候,需要將該文件(即printf函數(shù)所在的編譯文件)與helloworld文件整合到一起,此時(shí)鏈接器就可以大顯神通了,將兩個(gè)文件合并后生成一個(gè)可執(zhí)行目標(biāo)文件。