如何让指针不要乱指到其他地址以致p != NULL不能正常执行!
有如下程序
//显示所有页表函数
<p>
void view_pages()
{
jobs *p;
int i;
p=head->next;
if(p==NULL)
cout<<"当前没有用户作业"<<endl;
else
{
cout<<"当前所有的用户作业页表情况"<<endl;
while(p!=NULL)
{
cout<<"作业名:"<<p->jobname<<" 所用块数:"<<p->num<<endl;
cout<<"本作业所点块的序列是:"<<endl;
for(i=0;i<p->num;i++)
{
cout<<p->nums[i]<<" ";
}
cout<<endl;
p=p->next;
}
}
}
</p>
因为p = p->next后,p即使后面没有值了,还总指向一个任意地址,从而造成不能跳出while(p != NULL)这个循环,变成死循环,请问该怎么处理呢?