xcxd.net
当前位置:首页 >> 编写C++程序时,链表中EnD不明确怎么解决 >>

编写C++程序时,链表中EnD不明确怎么解决

让结尾指向NULL再看看别人怎么说的.

#include // 尾插法typedef struct node{ int x; struct node *front; struct node *next;} linklist;linklist *head = null; // 表头linklist *end = null; // 表尾#define length sizeof(linklist)void creatlink();void printendlinklist();void printheadlinklist();linklist *searchlink

你最好把你这部分所在的函数全部内容粘出来,不然不好给你解释 基本上看来你这是想建立一个带头结点的链表.

number; head=NULL; p2=p1;while(n--){ if(head==NULL) head=p1;using namespace std; struct list{ long number; list *next; list *head;return(head);//不需要删除p1}void print(struct list *creat){ struct list*temp;next; }}int main(){ print(creat(3)); p2=p1; }}

这个异常是内存读写异常,简单的说就是访问了不该访问的内存譬如如下c++代码1 *(int*) 0 = 0; 马上就会引发这个异常.你要自己检测自己的指针操作的代码.一般都是因为指针操作不当造成的. 学链表的时候经常碰到这个错误.

改了几处小错误,大致没什么问题了.#include"iostream"using namespace std;#define null NULL#include"cstring"#include"string.h"struct person{ char name[10]; int number; person *next; person *last;};void f(char a[],char b[]){ for (int i=0;i<

恐怕是文件的编码不对应 在windows下使用vc还是要好点,,,,,,,,~~~~~~~~~~~

ListNode *LocateNode(LinkList head, char *key){ ListNode *p=head->next; //从开始结点比较 while(strcmp(p->data,key)!=0 && p) //直到p为NULL或p-> data为key止// 这里存在问题,如果p=null,但是前面的strcmp先运行,就会出问题// 应该写成while(p && strcmp(p->data,key)!=0) p=p->next; //扫描下一个结点 return p; //若p=NULL则查找失败,否则p指向找到的值为key的结点}

其实你只要把你的函数,数据用类来组织一下就好了,下面是我的,给你参考下:#includeusing namespace std;class SingleList{public: typedef struct lnode { int data; lnode *next; }lnode,*linklist; int m; linklist l;public: SingleList(){l=NULL;m=0;}; ~

你定义一个宏: #include <stdio.h> #include<stdlib.h> #define end null; 某个链表没有子节点:node.next = end; 判断是否到最后一个链表了: for(……;node.next!=end;node=node.next){……}

相关文档
hbqpy.net | wkbx.net | pdqn.net | snrg.net | hyqd.net | 网站首页 | 网站地图
All rights reserved Powered by www.xcxd.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com