typedef struct nNode Node;
struct nNode
{
// 向上指针
Node* nUp;
// 向下指针
Node* nDown;
// 字符串字节数
int iSize;
// 字符串指针
char* acStr;
};
typedef struct
{
Node* nTop;
Node* nBottom;
int iSize;
} List;
// 新建节点
Node* Node_new(char* acStr)
{
Node* nNode = (Node*)malloc(sizeof(Node));
// 设置向上指针
nNode->nUp = NULL;
// 设置向下指针
nNode->nDown = NULL;
// 字符串字节数
if(acStr != NULL)
nNode->iSize = strlen(acStr);
else
nNode->iSize = 0;
// 设置字符串
if(nNode->iSize != 0)
{
nNode->acStr = (char*)malloc(sizeof(char)*(nNode->iSize) + 1);
strcpy(nNode->acStr, acStr);
nNode->acStr[nNode->iSize] = '\0';
}
return nNode;
}
// 删除节点
void Node_delete(Node* nNode)
{
free(nNode->acStr);
free(nNode);
}
// 输出节点的值
void List_print(Node* nNode)
{
// 输出字符串
printf("%s\n", nNode->acStr);
}
// 新建链表
List* List_new(void)
{
List* lList = (List*)malloc(sizeof(List));
lList->iSize = 0;
lList->nTop = Node
【数据结构】【C语言】链表相关函数
最新推荐文章于 2024-08-22 14:28:16 发布