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

📄 memlink.h

📁 内存管理程序
💻 H
字号:
#ifndef _MEMLINK_H_
#define _MEMLINK_H_

//数据缓冲结构
struct MEMLINK{
	char *pBuffer;//数据指针
	int  nBuflen;//长度
	MEMLINK *next;//下一结构
};

#include "memmgr.h"

class memlink  
{
/*缓存数据的结构*/

public:
	memlink();
	virtual ~memlink();

public:
	//释放资源并初始化
	void Close();
	//加入数据
	void Append(char *data,int datalen);
	//链表是否为空
	BOOL IsEmpty(){return m_pHead==NULL;}
	//节点长度
	int  GetMemLinkLen(){return m_length;}
	//节点长度
	int  GetDataLen(){return m_datalen;}
    //头指针
	MEMLINK *Head(){return m_pHead;}
private:
	//头指针,尾指针
	MEMLINK *m_pHead,*m_pLast;
	//节点长度
	int m_length;
	//数据长度
	int m_datalen;
};

inline void memlink::Append(char *data,int datalen)
{
	if(datalen<=0)
		return;
	MEMLINK *p =(MEMLINK*)MyMemAlloc(sizeof(MEMLINK));
	p->nBuflen = datalen;
	p->next = NULL;
	p->pBuffer = (char*)MyMemAlloc(datalen);
	memcpy(p->pBuffer,data,datalen);
	p->pBuffer[datalen] = '\0';

	if(m_pLast)
	{
		m_pLast->next = p;
		m_pLast = p;
	}
	else
	{
		m_pHead = m_pLast = p;
	}
	m_length++;
	m_datalen += datalen;
	
}

#endif 

⌨️ 快捷键说明

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