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

📄 istack.c

📁 以栈结构实现的多级菜单
💻 C
字号:
#include "IStack.h"

IStack* ISTACK_CreateInstance()
{
	return MALLOCREC(IStack);
}
boolean ISTACK_Release(IStack** pStack)
{
	FREEIF(*pStack);
	return TRUE;
}
boolean ISTACK_PushOnStack(IStack* pStack,void* pStackElement)
{
	if((MAX_STACK_SIZE==pStack->m_nTopPtr)||(!pStack)||(!pStackElement))
		return FALSE;
	pStack->m_pData[pStack->m_nTopPtr++]=pStackElement;
	DBGPRINTF("Push on Stack(Number=%d)",pStack->m_nTopPtr);
	return TRUE;
}
void* ISTACK_PopFromStack(IStack* pStack)
{
	if(!pStack)
		return NULL;
	DBGPRINTF("Pop from Stack(Number=%d)",pStack->m_nTopPtr);
	if(pStack->m_nTopPtr>0)
		return  pStack->m_pData[pStack->m_nTopPtr--];
	else
		return NULL;
}
void*   ISTACK_GetTopElement(IStack* pStack)
{
	if(!pStack)
		return NULL;
	if(pStack->m_nTopPtr>0)
		return pStack->m_pData[pStack->m_nTopPtr-1];
	else
		return NULL;
}

⌨️ 快捷键说明

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