为什么程序运行最后会出现-6.27744e+066?(。•́︿•̀。)


struct Content {    string id;              string name;           double number;      };typedef struct LNode {    Content data;              struct LNode *next; } LNode, *LinkList;     string head_1, head_2, head_3;int length;Status InitList_L(LinkList &L) {                                          L = new LNode;                     L->next = NULL;                    return OK;}Status GetElem_L(LinkList L, int i, Content &e) {                                                    int j;    LinkList p;    p = L->next;    j = 1;                             while (j < i && p) {                   p = p->next;                       ++j;                           }    if (!p || j > i)        return ERROR;                  e = p->data;                       return OK;}LNode *LocateElem_L(LinkList L, int e) {                                              LinkList p;    p = L->next;    while (p && p->data.number != e)              p = p->next;                         return p;                            } Status ListInsert_L(LinkList &L, int i, Content &e) {                                             int j;    LinkList p, s;    p = L;    j = 0;    while (p && j < i - 1) {        p = p->next;        ++j;    }    if (!p || j > i - 1)        return ERROR;                        s = new LNode;                           s->data = e;                             s->next = p->next;                       p->next = s;                             ++length;    return OK;} Status ListDelete_L(LinkList &L, int i) {                                               LinkList p, q;    int j;    p = L;    j = 0;    while ((p->next) && (j < i - 1))          {        p = p->next;        ++j;    }    if (!(p->next) || (j > i - 1))        return ERROR;                        q = p->next;                             p->next = q->next;                       delete q;                              --length;    return OK;} //ListDelete_L


你发下代码看看,应该是你指针出了问题

img

img

img