Abc ≠ abc。main(),多數環境用堆疊存放區域變數。/* ... */ 不可巢狀,預處理階段移除。if, while, int...)。
a = b; /* 註解未結束
c = d; */ // c = d 被吃掉,不會執行
if (a > 0) 而非 if(a>0)。
int
foo(int x)
{
...
}
#include
#include
int main() {
int balance = 0;
int ch;
while ((ch = getchar()) != EOF) {
if (ch == '{') balance++;
else if (ch == '}') {
if (balance == 0) { puts("wrong!"); return 1; }
balance--;
}
}
if (balance != 0) puts("wrong!");
return 0;
}
核心思想:計數器法,遇左括號 +1,右括號 -1,過程中不可為負,結束必須歸零。