如何定义一个未定义大小的全局变量数组?

现在想要 定义一个全局变量的二维数组,但是数组的大小需要由用户输入 该怎么解决????

#include <stdio.h>
#include <stdlib.h> // for malloc()
#include <time.h>

int **array; // 在所有代码块之外声明

int main() {
int i,j,m,n;
printf("行数 m = "); // 在使用前初始化
scanf("%d",&m);
printf("列数 n = ");
scanf("%d",&n);
array = (int **)malloc(sizeof(int **));
srand(time(0));
for(i = 0; i < m; ++i)
array[i] = (int *)malloc(n * sizeof(int));
for(i = 0; i < m; ++i) {
for(j = 0; j < n; ++j) {
array[i][j] = rand()%100;
printf("%4d",array[i][j]);
}
printf("\n");
}
// .............
return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-07-11
第一 把数组开大点= =要用多少到时候再说
第二 vector是个好东西,变长数组
以上为c++stl模板
第2个回答  2014-07-11
你最起码得说明白你用什么语言吧……
用c的话用malloc分配
c++的话就用new

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网