标题:关于指针问题,请教
取消只看楼主
mmrx
Rank: 2
等 级:论坛游民
帖 子:42
专家分:71
注 册:2012-10-18
结帖率:60%
已结贴  问题点数:20 回复次数:3 
关于指针问题,请教
下面是我写的代码中的三个小函数
nodePush( &treeStack,leaf );//treeStack=NULL;leaf有值
在这个函数中,首先判空
//结点栈Push
int nodePush( nodeStackPtr* head,binaryTreePtr tree )
{
    //判空
    if( nodeIsEmpty(*head) )//问题在这里,*head应该为NULL吧???
    {
        if( ( (*head)=(nodeStack*)malloc( sizeof(nodeStack) ) ) )
            return False;
        (*head)->date = tree;
        (*head)->next = NULL;
        return True;
    }
.......}

接下来是判空函数
//结点栈判空
int nodeIsEmpty( nodeStackPtr head )
{
    if(head)
        return True;
    else
        return False;
}

但是每次执行到了结点栈判空部分,head总是有一个地址,而且*head传入判空函数后,返回的是False
请问这个是什么原因?
搜索更多相关主题的帖子: return False 
2013-11-11 14:33
mmrx
Rank: 2
等 级:论坛游民
帖 子:42
专家分:71
注 册:2012-10-18
得分:0 
等大神
2013-11-11 14:38
mmrx
Rank: 2
等 级:论坛游民
帖 子:42
专家分:71
注 册:2012-10-18
得分:0 
...没有人么
2013-11-11 15:25
mmrx
Rank: 2
等 级:论坛游民
帖 子:42
专家分:71
注 册:2012-10-18
得分:0 
回复 7楼 yuccn
嗯,之后我摘出来在if里面加了==NULL后就没问题了,但是为什么不加就显示不为空呢?*head 的值为什么不是NULL?
2013-11-12 13:23



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-423370-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.474723 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved