请教:单链表的问题,附代码。
//定义
struct FRUSTUM
{
float trapezium01X ;
float trapezium01Y ;
float trapezium02X ;
float trapezium02Y ;
float trapezium03X ;
float trapezium03Y ;
float trapezium04X ;
float trapezium04Y ;
int FrameRate ;
int IndexColor ;
FRUSTUM *next ;
};
FRUSTUM *pS ;创建的节点
FRUSTUM *Frustum ;//头指针
FRUSTUM *pEnd ;//尾指针
//初始化
pS = new FRUSTUM ;
pS->FrameRate = 0 ;
pS->IndexColor = 0 ;
pS->trapezium01X = 0 ;
pS->trapezium01Y = 0 ;
pS->trapezium02X = 0 ;
pS->trapezium02Y = 0 ;
pS->trapezium03X = 0 ;
pS->trapezium03Y = 0 ;
pS->trapezium04X = 0 ;
pS->trapezium04Y = 0 ;
Frustum = NULL ;
pEnd = pS ;
//以下是一个循环体
if(Frustum == NULL)
Frustum = pS ;
else
pEnd->next = pS ;
pEnd = pS ;
pS = new FRUSTUM ;
pS->FrameRate = 1/m_DeltaFrameTime;
pS->IndexColor = pS->FrameRate/10 ;
pS->trapezium01X = m_Frustum[0][0] ;
pS->trapezium01Y = m_Frustum[0][1] ;
pS->trapezium02X = m_Frustum[1][0] ;
pS->trapezium02Y = m_Frustum[1][1] ;
pS->trapezium03X = m_Frustum[2][0] ;
pS->trapezium03Y = m_Frustum[2][1] ;
pS->trapezium04X = m_Frustum[3][0] ;
pS->trapezium04Y = m_Frustum[3][1] ;
//前提条件
m_Frustum 这个数组每一次循环都有不同的值,m_DeltaFrameTime也一样
//问题
问题是,循环结束后Frustum->next的值一直是进入循环的第一次赋值,如果链起来的话,应该会有不同的值的。百思不解,在线求救!!