人間は機械のお手伝い

そういや、全く書いていなかった、一番重要な点。これまで述べたような点も、場合によってはこれ1個で超えられるかも。

ということで、今回はコンパイルオプションについて。
一般的に知られてるgccなら


% gcc hoge.c
とやるのが一番楽なの。そして多少慣れてくると

% gcc -Wall -g hoge.c
とかやってエラーを全部吐き出したり、デバガgdbを使えるようにする。あとは出力先の-oくらい?

そして、高速化するための、とても単純でとても効果的な方法は


% gcc -O3 hoge.c
これだけ。このOはOptimizeの頭文字だと思われる。3とある数字は0〜6くらいを指定できる。数が大きい方が最適化がかかって高速になるはずだが、同時にバグの可能性も高まる。最適値は2〜3。場合によっては-Osにしてサイズを最小化する方が(キャッシュヒットなどの関係?)高速になる場合もある。
ただし、この最適化オプションをつける際の注意は…先程挙げた-gを外すこと。makeなんかを使ってると意外と忘れがち。