回复 楼主 姚杰
不是太懂你的意思
搞了个简单的:
#include <stdio.h>
#include <malloc.h>
#define INITSIZE 10
typedef struct
{
int *element;
int length;
int get_size;
}SqList;
int creat( SqList *L )
{
L->element = (int*) malloc (INITSIZE*sizeof(int));
if( !L->element )
return -1;
L->length = 0;
L->get_size = INITSIZE;
return 0;
}
int init( SqList *L )
{
int sum;
printf("input you want to add element amount:");
scanf("%d", &sum);
if( sum>L->get_size )
L->element = (int *) realloc (L->element, (sum*sizeof(int)));
if ( !L->element )
return -1;
for( ; sum != 0; --sum )
scanf("%d", &L->element[++L->length-1]);
L->get_size = sum;
return 0;
}
void print( SqList L )
{
for(int i=0; i != L.length ; ++i )
printf("%d ", L.element[i]);
printf("\n");
}
int main()
{
SqList L;
creat(&L);
init(&L);
print(L);
return 0;
}