語法書 / AA 競程語法書 上冊 / 第二單元 / 本單元常犯錯誤總覽

本單元常犯錯誤總覽

編譯錯誤 (CE)

錯誤 原因 修正
error: 'x' was not declared 使用未宣告的變數 先宣告 int x;
error: 'if' cannot be used as identifier 用關鍵字當變數名 改成 if_flag
error: expected ';' 漏了分號 在陳述式末加 ;

執行錯誤 (RE)

錯誤 原因 修正
除以零導致崩潰 a / 0 檢查 if (b != 0)
垃圾值輸出 使用未初始化的局部變數 宣告時初始化:int x = 0;

邏輯錯誤 (WA)

錯誤 原因 修正
結果錯誤 整數溢位 long long 或先轉型
結果錯誤 忘了整數除法會捨去小數 認知 / 是整數除法(只取商),不是數學除法
結果錯誤 運算子優先級 用括號確保順序
指派左邊是運算式 x + y = 10; 改成 x = 10 - y;