語義分析時發(fā)現(xiàn)的運算符與運算對象類型不合法等錯誤(書上的)
我對它例子的理解是:
程序語言中的一個數據類型一般包含兩個方面:類型的載體及其上的運算
如果操作數類型與運算不匹配,就會發(fā)生錯誤
如:整除取余運算符只能對整形數據進行運算
若其運算對象中有浮點數就認為是類型不匹配的靜態(tài)語義錯誤
靜態(tài)語義分析:語義審查(靜態(tài)語義),包括上下文相關性、類型匹配、類型轉換
靜態(tài)語義錯誤大概就是這些東西錯誤了。
A、語法錯誤 D、靜態(tài)的語義錯誤 C、詞法錯誤
如果錯了編繹是不能通過的;)
動態(tài)的語義錯誤應該是具體的語句的組合與它們間的關系不當,不過應該不能包括數據結構錯誤
一、編譯期通過不同:
(1)、語法錯誤,在編程環(huán)境下,會在編譯期被發(fā)現(xiàn)。
在編譯語言中,語法錯誤一定只在編譯期時出現(xiàn),編譯器要所有的語法都正確,才能正確編譯。不過解釋型語言中的語法錯誤可能要到運行期才會出現(xiàn),而且不一定容易區(qū)分語法錯誤及語義錯誤。
(2)、邏輯錯誤,編譯期不會發(fā)現(xiàn)邏輯錯誤。
二、錯誤表現(xiàn)不同:
(1)、語法錯誤,表現(xiàn)為編譯不通過。
(2)、邏輯錯誤,唯一表現(xiàn)就是錯誤的運行結果。
三、錯誤原因不同:
(1)、語法錯誤,拼寫錯誤、漏寫、多寫、不正確的算式等。
(2)、邏輯錯誤,語句中出現(xiàn)了差錯(比如公式寫錯)、算法中的錯誤,甚至是選擇了錯誤的算法。此外還有一些其它原因,如類型轉換錯誤、變量作用域錯誤、遺漏的代碼段、對問題或需求的理解有誤等等。
聲明:本網站尊重并保護知識產權,根據《信息網絡傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個月內通知我們,我們會及時刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學習鳥. 頁面生成時間:1.980秒