动态存储空间管理示例
#include <stdio.h>
#include <stdlib.h>
int main( ){
int *p1,*p2, max;
p1 = (int *) malloc(sizeof(int));
p2 = (int *) malloc(sizeof(int));
*p1 = 100;
*p2 = 10;
if(*p1>*p2)
max = *p1;
else
max = *p2;
printf("max=%d\n", max);
free(p1);
free(p2);
return 0;
}
动态数组的实现
#include <stdio.h>
#include <malloc.h>
int main()
{
int *score;
int num,i, total=0;
float aver;
printf("小组共有多少名同学?");
scanf("%d", &num);
score = (int*)malloc(num*sizeof(int));
printf("请输入学生成绩:\n");
for(i=0; i<num; i++)
{
scanf("%d", score+i);
total+=*(score+i); //或score[i]
}
aver=1.0*total/num;
printf("平均成绩:%5.2f", aver);
free(score);
return 0;
}