strcmp(str1, str2) としたとき、もし str1 < str2 の場合は負数が返りますが、この関数もたまに使うだけなので覚えられません。
アセンブラで大小の比較をする際、引き算をする( A – B で結果がマイナスなら B の方が大きい、ゼロなら同じ、それ以外なら A の方が大きい)のですが、そのポリシーでもって戻り値としているのでしょうか。ちなみに x86 系の CPU なら cmp 命令とかそんな感じだったと思います。
それとも、「逆ポーランド記法っぽく見えなくもないだろ?」というデザインなのか…
if (strcmp("9.0.4", detectFlashVersion()) >= 0) { // → ( 9.0.4 detectFlashVersion() >= ) っぽい? die("Flash プレイヤーは 9.0.4.x 以降を使ってほしいの"); }
どっちも考えにくい。
Contributions