我寫了一些小問題,要求用戶輸入一些(行和列),然後應該將數組中的所有內容都設置爲一個點(「。」)並將其打印出來,但這使我的應用程序崩潰。打印多維數組
void main()
{
int i,j, m, n;
printf("The number of lines (m): ");
scanf("%d", m);
printf("\nThe number of columns (n): ");
scanf("%d", n);
//create my array
char mineGrid[n][m];
//set all fields in to safe (.)
for (j = 0; j <= n; j++)
{
for (i = 0; i <= m; i++)
{
mineGrid[j][i] = ".";
}
}
//print a grid of dots
for (j = 0; j <= n; j++)
{
for (i = 0; i <= m; i++)
{
printf("%s", mineGrid[j][i]);
}
}
}
任何想法爲什麼這是崩潰?
我不認爲你是正確的。你認爲'm,n'是賦值後的常量。但他們不是。可變長度陣列允許來自C99標準。 – Mahesh
Derr。看了一會兒。非常感謝! – user968127