對於下列功能:指針不採取新的價值
/*this function removes the topmost item in the stack*/
void pop(Stack * S, NODE * returnNode) {
stackNode * temp;
if(S->root == NULL) {
ERROR("Sorry, cannot pop an empty stack!!\n");
}
else {
temp = S->root;
returnNode = temp->Item;/*x now points to the topmost node*/
S->root = temp->nextItem;/*stack points to the rest of the list*/
free(temp);/*returning memory to the system*/
}
}
我期待returnNode
指針具有相同的值作爲temp->Item
,但是當我在GDB
檢查值沒有。我錯過了什麼嗎?
我應該補充temp
值正在正確設置。
C是仍調用 - 值。沒有例外。 – Deduplicator 2015-02-07 20:47:22
爲什麼地獄人們會投下他們可能會遇到的每個問題?停止與你的傲慢,只因爲你知道C並不意味着你必須投票否決其他人的問題,多麼無用的態度 – Mcs 2015-02-07 21:10:54