| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
 
求各位大佬帮忙看下。 
双向链表建表的时候(*L) = (DuLinkList)malloc(sizeof(DualNode));一句运行不了, 
codeblocks 报错 segment error 
我一菜狗找不出问题所在, 
求大佬解答,万分感谢!!! 
 
代码如下: 
#include <stdio.h> 
#include <stdlib.h> 
 
 
#define OK 1 
#define ERROR 0 
 
typedef int Elemtype; 
 
typedef struct DualNode 
{ 
    Elemtype data; 
    struct DualNode *prior; 
    struct DualNode *next; 
}DualNode , *DuLinkList; 
 
 
int InitDualList (DuLinkList *L, int n) 
{ 
    DuLinkList r=0, p=0; 
    int i; 
 
    (*L) = (DuLinkList)malloc(sizeof(DualNode)); 
    if(!(*L)) 
        return ERROR; 
 
    r = *L; 
    r->next  =   r->prior = NULL; 
 
    for(i=1 ; i<=n ; i++) 
    { 
        p = (DualNode*)malloc(sizeof(DualNode)); 
        scanf("%d",&p->data); 
        r->next = p; 
        p->prior = r; 
        p->next = NULL; 
        r = p; 
    } 
    return OK; 
} 
 
int main() 
{ 
    int n; 
    DuLinkList *L = 0 ; 
    scanf("%d",&n); 
    InitDualList(L, n); 
    return 0; 
}
main函数里面这个 DuLinkList *L = 0 ;  改DuLinkList L = 0 ; 
 
 
 |   
 
 
 
 |