#define MSIZE 10 //最大物理块数
#define PSIZE 50 //最大页面数
char flag,pflag[PSIZE]; //缺页标志
int table[MSIZE][PSIZE]; //存放置换记录
本人想把上面定义的MSIZE和PSIZE的值改成可以输入任意值N 具体代码是什么啊
#define PSIZE 50 //最大页面数
char flag,pflag[PSIZE]; //缺页标志
int table[MSIZE][PSIZE]; //存放置换记录
本人想把上面定义的MSIZE和PSIZE的值改成可以输入任意值N 具体代码是什么啊
解决方案
100
使用指针的形式,并且用malloc分配空间
#include<stdio.h>
#include<stdlib.h>
#define MSIZE 10 //最大物理块数
#define PSIZE 50 //最大页面数
char flag,*pflag; //缺页标志
int **table; //存放置换记录
void main()
{
int m, p, i;
printf("请输入m和p:");
scanf("%d%d", &m, &p);
pflag = (char *)malloc(sizeof(char) * p);
table = (int **)malloc(sizeof(int*) * m);
for(i = 0; i < m; i++)
table[i] = (int *)malloc(sizeof(int) * p);
}