对于*p++运行结果如下,运行后p的值为0,但是p的地址增加了1。
为什么这样呢?按照C语言的语法,++和*为右结合性,所以先运行p++,然后取p的值,所以为0,而地址却增加了1.
对于(*p)++,运行结果如下,p为11,p的地址没变。
因为先运行的是*p,然后是*p的值++。
对于*p++运行结果如下,运行后p的值为0,但是p的地址增加了1。
为什么这样呢?按照C语言的语法,++和*为右结合性,所以先运行p++,然后取p的值,所以为0,而地址却增加了1.
对于(*p)++,运行结果如下,p为11,p的地址没变。
因为先运行的是*p,然后是*p的值++。