[bo]以下是引用 [un]cosdos[/un] 在 2008-4-19 14:02 的发言:[/bo]
/************************
19-04-08 14:00
DEV-C++
************************/
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int a; // [a][b]
int b; // [a][b]
printf("请输入二维int数组的维数a和b: ");
scanf("%d %d", &a, &b);
while(getchar() != '\n');
int (* p)[b]; // 指向一个不定长的数组的(int)数组
p = malloc(sizeof(int) * a * b);
int i, j;
for(i = 0; i < a; i++)
for(j = 0; j < b; j++)
scanf("%d", &p[i][j]);
for(i = 0; i < a; i++)
{
for(j = 0; j < b; j++)
printf("%d ", p[i][j]);
putchar('\n');
}
system("Pause");
return 0;
}
你既然用GCC/mingw编译器,那你这个动态分配已经不需要了
本来编译器就支持变长数组,在这个编译器上属于多此一举
" border="0" />