2012-01-29 111 views
2

我是C新手,想知道*p++=x是什么意思。
我明白var += x是什么意思,什么*var++的意思,但我没有得到这一个。什么意思* p ++ = x

+0

事实上,你必须努力解析这个问题,这就是为什么你最好把它写在两个不同的指令中。 – 2012-01-29 09:18:36

回答

10

这意味着分配给x*p然后使p点到下一个元素:

*p = x; 
p++; 
+0

现在你说,看起来很明显......谢谢! ;) – Darrrky89 2012-01-29 09:07:14

3

后缀运算符具有比一元运算符更高的优先级,所以*p++被解析为*(p++);也就是说,您正在取消引用表达式p++的结果。

所以表达式*p++ = x分配的x到任何p所指向的值并前进p以指向下一个元素。