言語横断

概要

言語道断、ではなくて、言語横断でちょっとした書き方の違いが混乱の元となるので覚え書き。

行の終わり

C/C++, Java, Javascript, PHPは';'が必要。

Python, Rubyは改行が行末、';'で文末指定可能。式の途中での改行か'\'で継続行。

等号比較(==/===)

PHPは==で文字列化(先頭から数値変換可能な部分だけ数値化)

条件分岐

C/C++, Java, Javascriptはif (cond)...else if (cond)...else、ブロックは{}

Pythonはif cond:~elif cond:~else:、ブロックはインデント

Rubyはif cond then...elsif...else...end、ブロックはthen/elsif/else/end(thenは省略可)

ループ

for

C/C++, Java, Javascript, PHPは(var = 初期値; 終了条件; 変更)、ブロックは{}

Pythonはfor var in obj:、ブロックはインデント

Ruby はfor var in obj do...end、ブロックはdo...end

while

C/C++, Java, Javascript, PHPはwhile (cond)...do...while (cond);、ブロックは{}(PHPのwhileのみwhile (cond):...endwhile;あり)

Pythonはwhile cond:...do...while構文はないのでwhile Trueで代用、ブロックはインデント

Rubyはwhile cond...endbegin...end while cond