編譯器
在程式的錯誤中,下列何者能在編譯時就被發現?
- A因使用者輸入的檔案不存在而造成的錯誤
- B執行中可用記憶體不足的錯誤
- C括號沒有對應的文法錯誤
查看答案與解析
正確答案:C. 括號沒有對應的文法錯誤
括號的對應與漏寫分號等文法錯誤,一定會在語法分析的階段被發現,並使編譯停止。型別不一致等也會在語意分析中被發現。另一方面,使用者指定的檔案是否存在、執行中記憶體是否足夠,會隨執行時的環境與輸入而改變,所以在編譯時無法得知。對於這類執行期的錯誤,需要在程式中檢查回傳值等對策。
- A. 檔案是否存在取決於執行時的環境。
- B. 記憶體是否足夠是在執行時決定的。
- C. 正確。文法錯誤會由語法分析發現。