① c語言編寫一個程序後,為什麼編譯是是文件不存在,要如何調節
可能是你的文件夾地址設置不正確,不知道你用了那個版本的C,如果是TC,可以這樣去檢查一下(設TC目錄是C:\TC):
運行TC,進入Options/Directories,把其中的Include Directories設置為C:\TC\INCLUDE 。
② c語言gcc編譯器如何處理不同編碼的中文txt文件
純linux環境下iconv庫可以干這些
③ C語言編譯到機器碼的過程求詳細解說,不勝感激
從編碼到生成可執行的binary文件是有好幾個過程的:(默認已完成編碼)
1, 預編譯(預處理), 也就是替換工作, 先把代碼中的宏做替換, 條件編譯等會做處理,為編譯做作準備;
2,編譯,包括了語法的檢查,匯編代碼等中間代碼的生成,代碼優化,obj文件(也算是目標代碼)的生成,已經是有機器碼了;
3.庫的合成,這個不一定有,不是必須的;
4.鏈接, 連接器會按照一定的規則,比如根據連接腳步,把code組織起來,生成elf文件(elf可能不是一個所有通用的格式),這個時候已經可以執行了,裡面的可以執行的機器碼;
5,裁剪, 可以把elf文件中的非必需的段 strip,生成一個更精簡的elf文件;
6,binary的生成,obj命令可以把elf文件轉換成binary文件,binary文件燒錄到存儲器中可以直擊運行。
④ c語言編譯時需要檢查嗎
你問的需要檢查,是檢查什麼?
C語言編譯時會檢查語法是否正確,類型是否匹配等。不檢查數組越界,死循環,無限遞歸等。