用于确定存储空间的功能

时间:2012-06-24 20:20:43

标签: memory

我需要在以下函数中确定用于确定保留和/或分配用于存储内存地址的内存空间的公式或函数:通过从文本文件中获取数据来创建循环简单列表。我该如何实现呢?

这是我创建循环简单列表的函数的样子:

void creare_lista(listaSimpla *&cap,ContBancar *cont)
{
        listaSimpla *nou = (listaSimpla*)malloc(sizeof(listaSimpla));
        nou->info=cont;
        nou->next=NULL;
        if(cap==NULL)
        {
            cap=(listaSimpla*)malloc(sizeof(listaSimpla));
            cap=nou;
            cap->next=cap;
        }
        else
        {
            listaSimpla *aux=cap;
            while(aux->next!=cap)
                aux=aux->next;
            aux->next=nou;
            nou->next=cap;
        }

}

并且在void main()中,我有以下代码从文本文件中获取数据:

listaSimpla *cap=NULL;
    char buff[100];
    FILE *f;
    f=fopen("fisier.txt", "r");
    if(f)
    {
            while(!feof(f))
            {
                ContBancar *cont=new ContBancar;
                fscanf(f,"%d", &cont->nrCont);
                fscanf(f,"%s", &buff);
                cont->nume=(char*)malloc(strlen(buff)+1);
                strcpy(cont->nume,buff);
                fscanf(f,"%d",&cont->data.zi);
                fscanf(f,"%d",&cont->data.luna);
                fscanf(f,"%d",&cont->data.an);
                fscanf(f,"%f",&cont->sold);
                fscanf(f,"%f",&cont->rata);
                creare_lista(cap,cont);
            }
    fclose(f);
    }

0 个答案:

没有答案