OSX で system() が返す status がちょっと変

system() でプログラムの外部のコマンドを呼び出すとします。このとき、呼び出しの成否をステータスコードで取得できる…のですが、

 成功失敗
Linux1127
OSX 10.3.9(Darwin 7.9.0)0127
OSX 10.4.3(Darwin 8.3.0)0127
FreeBSD1127

になってて、1 を期待してたら何が起きてるのか分からずに困った。

Manpage of SYSTEM を見ると 127 の方で判断すりゃいいみたいだけど、そういうもんなのかな。ちょっとびっくり。

More