为什么这个功能不起作用? (链表)

时间:2017-07-24 19:22:38

标签: c linked-list segmentation-fault singly-linked-list

有人可以帮助我理解为什么这会给我分段错误吗?该函数应该在列表的末尾添加n。

    typedef struct lligada {
    int valor;
    struct lligada *prox;
} *LInt;

void appendL (LInt *l, int n){
    LInt new=(LInt)malloc(sizeof(struct lligada));
    while ((*l) && (*l)->prox) l=&((*l)->prox);
    (*l)->prox=new;
    new->valor=n;
    new->prox=NULL;
}

1 个答案:

答案 0 :(得分:3)

如果最初头节点等于void appendL ( LInt *l, int n ) { LInt new = (LInt)malloc(sizeof(struct lligada)); new->valor = n; new->prox = NULL; while ( *l != NULL ) l = &( *l )->prox; *l = new; } 那么这个statemenet

join

为您提供分段错误。

更正确的函数定义可能看起来像

select count(distinct t1.code + t1.flname + t1.col1 + sq.flname) 
from #t4 t1 join
     #t4 sq
     on sq.col1 = t1.col1;