没有malloc函数的C中的链表



如何在不使用malloc的情况下使用这个程序?如果我使用temp.next=&newtemp,程序工作没有错误吗?我必须学习如何避免malloc。

    for(int ;;){
    printf("Fusni N(numrin e qyteteve): "); scanf("%d", &N);
    if(N<13 || N>100) {printf("Futet N gabimt( 13 < N < 100)nn");continue;}
M=1;
while(1){
p = q = malloc(sizeof(struct node));
    p->id_qyteti = 1;
    for (i = 2; i <= N; ++i) {
        p->pas = malloc(sizeof(struct node));
        p = p->pas;
        p->id_qyteti = i;
    }
    p->pas = q;
 printf("M=%d, Zonat ku nderpritet rryma:n", M);
for (count = N; count > 1; --count) {
 printf("%d ",p->pas->id_qyteti);   p->pas = p->pas->pas;
if(count==2)printf("nn");
      for (i = 0; i < M - 1; ++i) p = p->pas;
}
if(p->id_qyteti==13)
 {
printf("13.Tirana ngelet e funditn");
   printf("M-ja minimale: %dn", M);
   break;
 }
else M++;
}}
return 0;
}

您可以将它用于数组,但问题是您将拥有有限的容量。例如,你可以有一个struct yourstruct[500];和一个整数,显示下一个自由结构体在哪里,而不是错配,你会做一些像mynode->next = &yourstruct[i++]这样的事情,当然,你必须有一个更好的控制,知道自由结构体在哪里。

相关内容

  • 没有找到相关文章

最新更新