これは Windows でのエラーであり、Windows でプログラムを実行する方法がわかりません。ここでプログラムがクラッシュする理由についてのアイデアはありますか (コメント行を参照)。メモリの誤用に関係している可能性があると思います。
#define TABLE_MAX_ROW 500
#define TABLE_MAX_COL 20
#define TABLE_MAX_ELT_LEN 60
ここから始める:
foo()
{
char table[TABLE_MAX_ROW][TABLE_MAX_COL][TABLE_MAX_ELT_LEN];
bar(table);
}
この関数に渡します:
bar(char table[TABLE_MAX_ROW][TABLE_MAX_COL][TABLE_MAX_ELT_LEN])
{
unsigned int col, row;
if (table == NULL) { // crashes here
printf("error: table == NULL!\n");
return -1;
}
for (row = 0; row < TABLE_MAX_ROW; row++)
for (col = 0; col < TABLE_MAX_COL; col++)
table[row][col][0] = '\0'; // if above if block commented out, crashes here
return 0;
}