teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

少し追記

2020/08/29 01:42

投稿

thkana
thkana

スコア7738

answer CHANGED
@@ -27,5 +27,8 @@
27
27
 
28
28
  文の終わりが;であることはありますが(;は文の内側)、;で終わらない文もあり({}とか、if文やfor文等々)、なんでもかんでも**「文の後に;をつける」という勘違い**があるとif_2の解釈に悩むことになる、ということでしょうか。
29
29
 
30
+ もし`if(式)文;` とおぼえているならそれが間違いです。
31
+ `if(式)文`です。
32
+
30
33
  ついでにいうと、`if(条件)`という言い方にも危うさを感じます。確かにif文としてはカッコ内を「条件」として分岐をするわけですが、ここはなにか「条件」という特別な文法等があるわけではありません。単に何らかの値をもたらす式があればいいだけ。その値が0か0以外か、それが動作を分けます。
31
34
  なにか「条件」という特別なものだと思っていると、ifのカッコの中には==だとか<とか>がなきゃいけない、とか思い込んだり、==とか<とか>が単なる(比較して1か0を返す)演算子ではなくて特別な記号に見えてしまったりするかも知れません。