いくつか Warning (警告)が出ると思います。 なるべく警告が出ないようにプログラムを直してください。
#include <assert.h> /* * int assert(int expression); * このマクロは、プログラムに診断を挿入するとき有効です。 * 実行中に expression が偽(ゼロ)になった場合、 assert() は、 * 標準エラー出力にエラーを表示し、強制終了します。 * -DNDEBUG を指定してコンパイルすると、アサーションは * プログラムにコンパイルされません。 */
上記の assert() と併用して、プリプロセッサを次のように 使うと便利です。 /* * NDEBUG と反対の意味を持つシンボル DEBUG の定義 */ #ifdef NDEBUG # undef DEBUG #else # define DEBUG #endif プログラムの中では次のように使用します。 #ifdef DEBUG ここに挟まれた部分はデバッグ時のみ実行されます。 #endif デバッグが終わったら -DNDEBUG を指定してコンパイルします。