我写了一些小问题,要求用户输入一些(行和列),然后应该将数组中的所有内容都设置为一个点(“。”)并将其打印出来,但这使我的应用程序崩溃。打印多维数组
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