A. c編譯程序是什麼
c編譯程序是將c語言程序編譯成目標代碼程序的程序,即正確答案應該選擇D。
1、c語言是目前世界上最流行、使用最廣泛的面向過程的高級程序設計語言。 c語言對操作系統和系統使用程序以及需要對硬體進行操作的場合,用c語言明顯優於其它高級語言,許多大型應用軟體都是用c語言編寫的。
2、編譯就是利用編譯程序從源語言編寫的源程序產生目標程序的過程,其中的五個階段分別是詞法分析、語法分析、語義檢查和中間代碼生成、代碼優化、目標代碼生成。主要是進行詞法分析和語法分析,又稱為源程序分析,分析過程中發現有語法錯誤,給出提示信息。
(1)c程序編譯現象擴展閱讀
c編譯程序的語言特點
對於c編譯程序來說,其語言的特點如下:
1、c語言是一種結構化語言。它層次清晰,便於按模塊化方式組織程序,易於調試和維護,而且表現能力和處理能力極強。
2、c語言具有豐富的運算符和數據類型,便於實現各類復雜的數據結構。它還可以直接訪問內存的物理地址,進行位(bit)一級的操作。
3、由於c語言實現了對硬體的編程操作,因此集高級語言和低級語言的功能於一體。它既可用於系統軟體的開發,也適合於應用軟體的開發。
4、此外,c語言還具有效率高、可移植性強等特點。因此它廣泛地移植到了各類各型計算機上,從而形成了多種版本。
B. 為什麼我寫的C語言程序編譯時沒錯,運行時有錯誤
樓主,你好!編譯沒有錯誤只能說明沒有語法錯誤,並不能說明代碼的邏輯沒有錯!因為編輯器主要是根據c語言的語法來檢查你的代碼有沒有錯!
C. 用VC編寫C++ 程序出現一直編譯或連接的現象怎麼辦
那種情況叫假死,可以說是VC的一個BUG,如果你經常用VC,以後你會發現很多VC的BUG。
不過一般都是盜版的VC很容易假死的,而且大都是你的程序在演算法不是很好或者其他什麼地方有語法或邏輯錯誤~~,編譯器優化不過去~~
除了任務管理器,至今我也沒有更好的方法。自己編程時多注意優化演算法和減少錯誤~~
ctrl+alt+del不行的話,在運行里輸入
:taskmgr.exe試試
還不行的話到C:\WINDOWS\system32下找到taskmgr.exe這個執行文件雙擊(從後往前找能快點,t靠後)
還不行的話可能你電腦的taskmgr.exe壞了,到別人電腦上拷一個你願意放哪就放哪!最好C:\WINDOWS\system32里放一個,系統環境配在那
D. c程序進行編譯的過程中,可發現注釋中的拼寫錯誤
c程序進行編譯的過程中,是不可以發現注釋中的拼寫錯誤的。注釋中的拼寫錯誤只可能通過人工檢查發現。
因為C語言編譯時,不檢查注釋的內容。
E. c語言程序編譯過程包括哪四個
C語言編譯過程分成四個步驟:
1,由.c文件到.i文件,這個過程叫預處理
2,由.i文件到.s文件,這個過程叫編譯
3,由.s文件到.o文件,這個過程叫匯編
4,由.o文件到可執行文件,這個過程叫鏈接
用gcc查看預處理過程(假設源文件叫hello.c)
gcc -o hello.i hello.c -E
然後用 vi hello.i 即可查看生成的預處理文件
按ESC 輸入:$ 跳到預處理文件 可看到hello.c源碼
宏的本質:預處理階段的單純的字元串替換
預處理階段,不考慮C語法
F. C語言編譯成功卻沒有結果顯示怎麼破
經整理並編譯後執行,發現該程序之所以沒有顯示,是因為它一直在執行。
出現上述現象,一般情況下,是因為程序陷入了死循環。
建議:
一、每個if或else子句,哪怕只有一個語句都用{}括起來,以便梳理程序結構;
二、逐段測試或按功能寫成函數形成模塊,從而方便調試。
G. c語言helloworld代碼是對的,但編譯錯誤
寫c語言的時候,如果代碼沒錯,這只能說明語法沒有出錯,直接導致的結果就是能編譯通過,並不意味著執行的結果就是正確的。影響c語言代碼執行結果的因素非常多。
一、指針的不正確運用;
二、變數精度問題。char,int,unsigned int,long ,float等,如果變數精度使用不正確,也會影響運算結果;
三、運算符的應用不正確。例如除,取余的區別;
四、正負符號位;
五、運算符的優先順序使用;
六、編譯器不同。各種編譯器也可能造成結果不一致;
C語言雖然是一門比較簡單的語言,但是要掌握這些細節,其實並不容易。
H. c語言程序編譯時沒錯誤,組建時為什麼出現錯誤
你說的組建錯誤多半是link出錯吧,這個很可能是你安裝的路徑不是默認那個路徑,於是,可能需要你自己修改一下編譯器設置,你可以到網上搜一下到底是在什麼地方設置。我記不清楚具體位置了,就是設置鏈接器的路徑。在對vc進行設置的那個菜單裡面找一找,裡面就有各種路徑設置,包括頭文件路徑啊,可執行文件路徑之類的,就在裡面設置到vc下面的bin路徑就可以了。
I. C語言文件的編譯與執行的四個階段並分別描述
開發C程序有四個步驟:編輯、編譯、連接和運行。
任何一個體系結構處理器上都可以使用C語言程序,只要該體系結構處理器有相應的C語言編譯器和庫,那麼C源代碼就可以編譯並連接到目標二進制文件上運行。
1、預處理:導入源程序並保存(C文件)。
2、編譯:將源程序轉換為目標文件(Obj文件)。
3、鏈接:將目標文件生成為可執行文件(EXE文件)。
4、運行:執行,獲取運行結果的EXE文件。
(9)c程序編譯現象擴展閱讀:
將C語言代碼分為程序的幾個階段:
1、首先,源代碼文件測試。以及相關的頭文件,比如stdio。H、由預處理器CPP預處理為.I文件。預編譯的。文件不包含任何宏定義,因為所有宏都已展開,並且包含的文件已插入。我歸檔。
2、編譯過程是對預處理文件進行詞法分析、語法分析、語義分析和優化,生成相應的匯編代碼文件。這個過程往往是整個程序的核心部分,也是最復雜的部分之一。
3、匯編程序不直接輸出可執行文件,而是輸出目標文件。匯編程序可以調用LD來生成可以運行的可執行程序。也就是說,您需要鏈接大量的文件才能獲得「a.out」,即最終的可執行文件。
4、在鏈接過程中,需要重新調整其他目標文件中定義的函數調用指令,而其他目標文件中定義的變數也存在同樣的問題。