标签: c++ pointers
我刚注意到一些关于指针和++运算符我不太了解的东西。让我们检查一下这段代码
int test = 0; int* pTest = &test; *pTest = *pTest + 1; *pTest++;
当第一次编写这段代码而没有尝试它时,我期望最后两行做同样的事情并测试得到值2,但是最后一行将指针地址增加了一个,这就是
pTest++;
会这样做。我只是遗漏了一些非常明显的东西,或者为什么
*pTest++;
和
做同样的事情?
答案 0 :(得分:7)
*(pTest++) is the same as (*pTest)++; 。
*(pTest++)
(*pTest)++;
在它周围放一些parantheses:
ClassA