2
1.NODE **ptr = (NODE **)node
NODE  *delPtr = *ptr;
obj->addList(delPtr->strKey);

2.NODE **ptr = (NODE **)node;
obj->addList(*ptr->strKey);

我正在为我正在制作的核心转储程序分析这个,功能似乎是相同的。这两个声明有什么区别?第二个也做核心转储吗?请帮忙。

4

1 回答 1

6

运算符优先级表示->在取消引用运算符之前评估,*所以

obj->addList(*ptr->strKey);

实际上是

obj->addList(*(ptr->strKey));

如果你想使用这个表格,你需要用括号括起来*ptr

obj->addList((*ptr)->strKey);
于 2013-08-29T10:14:23.473 回答