正方行列を宣言しようとしていますが、行/列の値が 1446 より大きいセグメンテーション違反が発生しています。この値は「手動バイナリ検索」を行っていることがわかりました。
これが私のコードのスニペットです:
boolean matrix[vertex][vertex];
memset(matrix, 0, sizeof(matrizAdjacencia[0][0]) * vertex * vertex);
最初の実行では、32768*32768 の位置を宣言しようとしていました。しかし、それは失敗し、この 1446 の値が見つかるまで低い値を修正し始めました。コードは memset(); の前に失敗します。
ブール型は単なる
typedef enum {true, false} boolean;
gdb をアタッチしてプログラムを実行すると、次のエラーが生成されます。
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00007fff5f3ff548
0x00007fff8e6a5fba in tzload ()
前もって感謝します、