#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<string.h>
#include<stdlib.h>
#include<malloc.h>
struct Node
{
int iData;
struct Node* pNext;
};
//尾添加
void AddToTail(struct Node* stHead , int* iNodeCount , int iData);
int main()
{
//定义空头第一种方法
struct Node stHead = { 0,NULL };
//定义一个计时器
int iNodeCount = 0;
AddToTail(&stHead, &iNodeCount, 1); //尾添加
AddToTail(&stHead, &iNodeCount, 2);
AddToTail(&stHead, &iNodeCount, 3);
////定义空头第二种方法
//struct Node* pHead = (struct Node*)mslloc(sizeof(struct Node));
//pHead->iData = 0;
//pHead->pNext = NULL;
system("pause>0");
return 0;
}
//尾添加
void AddToTail(struct Node* stHead, int* iNodeCount, int iData)//尾添加
{
//参数合法性检测
if (NULL == stHead || NULL == iNodeCount || iNodeCount < 0)
{
return;
}
//创建尾节点
struct Node* pTemp = (struct Node*)malloc(sizeof(struct Node));
if (pTemp == NULL);//判断指针为空不执行
{
return;
}
//空间赋值
pTemp->iData = iData;
pTemp->pNext = NULL;
//节点连接链表
struct Node pT = stHead;//定义中间变量
while (pT->pNext != NULL)
{
pT = pT->pNext;
}
pT->pNext = pTemp;
//计数器
(*iNodeCount)++;
}
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<string.h>
#include<stdlib.h>
#include<malloc.h>
struct Node
{
int iData;
struct Node* pNext;
};
//尾添加
void AddToTail(struct Node* stHead , int* iNodeCount , int iData);
int main()
{
//定义空头第一种方法
struct Node stHead = { 0,NULL },*p;
//定义一个计时器
int iNodeCount = 0;
AddToTail(&stHead, &iNodeCount, 1); //尾添加
AddToTail(&stHead, &iNodeCount, 2);
AddToTail(&stHead, &iNodeCount, 3);
AddToTail(&stHead, &iNodeCount, 4);
AddToTail(&stHead, &iNodeCount, 5);
p = stHead.pNext;
while(p)
{
printf("%d ",p->iData);
p=p->pNext;
}
////定义空头第二种方法
//struct Node* pHead = (struct Node*)mslloc(sizeof(struct Node));
//pHead->iData = 0;
//pHead->pNext = NULL;
system("pause>0");
return 0;
}
//尾添加
void AddToTail(struct Node* stHead, int* iNodeCount, int iData)//尾添加
{
//参数合法性检测
if (NULL == stHead || NULL == iNodeCount || *iNodeCount < 0)
{
return;
}
//创建尾节点
struct Node* pTemp = (struct Node*)malloc(sizeof(struct Node));
if (pTemp == NULL)// ’; ' 多了 //判断指针为空不执行
{
return;
}
//空间赋值
pTemp->iData = iData;
pTemp->pNext = NULL;
//节点连接链表
struct Node *pT = stHead;//定义中间变量
while (pT->pNext != NULL)
{
pT = pT->pNext;
}
pT->pNext = pTemp;
//计数器
(*iNodeCount)++;
}