2019年3月30日 星期六

[小技巧]懸置else問題

懸置else問題(dangling-else problem)是一種使用if...else時可能會出現的錯誤。

以下以JavaScript為例:


以剛入門的初學者來說,可能會認為這段程式碼會印出"outer"。

但是實際執行結果並非如此。


實際上,電腦對這段程式的解讀會是這個樣子:



所以這段程式並不會印出任何文字。

解決辦法:


為了避免類似錯誤發生,建議替if...else加上大括弧,解決懸置else的問題。

2019年3月26日 星期二

[小技巧]cin和cout代表的意義

初學者在學C++的時候,有時可能會將cin和cout弄混,這往往是因為沒有了解這兩個名稱的意義。
其實cin和cout並非是單一一個單字,而是c加上一個單字所組成,像cin讀作「see-in」,而cout讀作「see-out」,這樣就可以看出是in(輸入)和out(輸出)的區別。
下次再弄混這兩個名稱時,請不要用死背的方式記住它們,不妨去理解該單字的意義,如此一來便能更方便的記住這些名稱。