例子:
其他的相信都很明确了,那么含糊不清的其实是*p++和*++p的区别在哪里了,回忆一下i++和++i的,一个是先使用,再运算,一个是先运算,再使用(见一道题搞懂i++与++i),根据优先级,*与++是一样的,他们是从右向左运算,所以先考虑++的情况,所以前者*p1了一次(使用),在运算(p1++并非*p1++),而后者则不同。 当然,最好还是应该有括号,比较清晰* (start++) |
例子:
其他的相信都很明确了,那么含糊不清的其实是*p++和*++p的区别在哪里了,回忆一下i++和++i的,一个是先使用,再运算,一个是先运算,再使用(见一道题搞懂i++与++i),根据优先级,*与++是一样的,他们是从右向左运算,所以先考虑++的情况,所以前者*p1了一次(使用),在运算(p1++并非*p1++),而后者则不同。 当然,最好还是应该有括号,比较清晰* (start++) |