C言語なら俺に聞け(入門篇) Part 15at TECHC言語なら俺に聞け(入門篇) Part 15 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト700:デフォルトの名無しさん 07/07/05 16:06:00 プロトタイプ宣言くらい関数内でできる。 701:デフォルトの名無しさん 07/07/05 16:41:17 次のような関数を作りました。 Vertices isMaxNoVer(Vertices R[]){ Vertices max; int i, count=0; max.num = 0; max.deg = 0; max.no = 0; count = countVer(R); for(i=0; i<count-1; i++){ if(max.no < R[i].no){ max = R[i]; } } return max; } この関数を、次の再帰関数を使って二度目に呼び出した時、 動作がおかしくなり、以下のようなおかしな値が入ります。 test expand 1, 8 -1073747304 134516287 更にその後2度目のtest expand 3に入る前に セグメントエラーを起こして止まってしまいます。 これだけの情報でわかって頂けるかわかりませんが、 誰か助けてください。 702:701 07/07/05 16:42:43 void expand(Vertices R[]){ Vertices p, buf[N], Rp[N]; while(countVer(R) != 0){ p = isMaxNoVer(R); printf("test expand 1, %d %d %d\n", p.num, p.deg, p.no); if((countVer(Q) + p.no) > countVer(Qmax)){ syokikaVer(buf); mataha(Q, p); printf("test expand 2\n"); syokikaVer(buf); ganma(buf, p.no, G); printf("test expand 3\n"); syokikaVer(Rp); katu(Rp, buf, R); printf("test expand 4\n"); 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch