⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rlink.cpp

📁 用mfc写的图书馆信息管理系统界面
💻 CPP
字号:
// RLink.cpp: implementation of the CRLink class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "LibMgr.h"
#include "RLink.h"
#include "string.h"
#include "LibMgrDlg.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

extern RLink Head;
extern linkNo;
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CRLink::CRLink()
{

}

CRLink::~CRLink()
{

}

RLink CRLink::GetHead()
{
	return H;

}

RLink CRLink::Find(RLink h, CString num)//在链表中寻找指定节点.头节点不存储数据
{
	RLink P=h->Next;
	while( P&&P->Num != num)
	{
		P=P->Next;
	}
	return P; 
}

void CRLink::InitList()     //初始化
{
	RLink h;
	h = new RNode;  
	H = h;
 	H->Next = NULL;

}

RLink CRLink::GetList(RLink h, int i)          //得到第i个结点
{
	int j=-1;                               //开始存储数据的第一个节点为第0个节点
	RLink P=h;
	if (i<0) return(NULL);                   
	while(P->Next&&j<i)
	{
		P=P->Next;j++;
	}
	if (i==j) return(P);
	else return(NULL);                      //查找失败,即i>表长//
}


void CRLink::Insert(RLink h,CString Num,CString Name,CString Unit,int id,int i)
{
	RLink p1, p2;
	
	if(i==0)	p1=h;
	
	else p1=GetList(h,i-1); //取结点i-1的指针
	if(p1==NULL) 
	{
		Inok = FALSE;
	}
	else
	{
		p2=new RNode;
		p2->Num=Num;
		p2->Name=Name;
		p2->Name=Name;
		p2->Unit=Unit;
		p2->id=id;
		p2->sum=0;
		

		p2->Next = p1->Next;                  //插入新结点    
		p1->Next = p2; 
	}
}

void CRLink::Delete(RLink h,int i)           //删除第i个结点,h为链表头结点
{
	RLink p1,p2;
	if(i==0)
	{
		p1=h;
	}
	else  
	{
		p1=GetList(h,i-1);
	}
		if(p1&&p1->Next)                         //若p1及p1->next所在的结点存在
		{
		p2=p1->Next;
		p1->Next=p2->Next;
		delete p2;                          //删除
		Delok = TRUE;
		}                        
		else                                   //否则失败
		{
		Delok = FALSE;
		}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -