C 언어의 구조체: 유연성 그룹 생성

1038 단어 C 언어
지식점: 1. 유연성 수조 즉 수조 크기가 정해진 수조 2. C 언어의 구조체의 마지막 요소는 크기가 정해지지 않은 수조일 수 있다. 3. C 언어는 구조체를 통해 유연성 수조를 실현할 수 있다.
#include 
#include  //malloc()     

typedef struct _soft_array //          ,       SoftArray
{
    int len;
    int array[];
}SoftArray;

void create_softarray(SoftArray **sa,int n)//            
{
    *sa = (SoftArray*)malloc(sizeof(SoftArray) + sizeof(int) * n);
    (*sa)->len = n;
}

void delete_softarray(SoftArray *sa)//             
{
    free(sa);
}

void print_softarray(SoftArray *sa)//              
{
      int i ;
      for(i=0;i< sa->len;i++)
    {
        printf("%d\t",sa->array[i]);
    }
}

int main()
{
    SoftArray *sa = NULL;//    SoftArray       sa

    create_softarray(&sa,10);//       sa

    int i=0;

    for(i=0;i< sa->len;i++)//          
    {
        sa->array[i] = i+1;
    }

    print_softarray(sa);//         

    printf("
"); delete_softarray(sa);// return 0; }

좋은 웹페이지 즐겨찾기