C语言中,1.*px++ *(px++) (*Px)++ 有什么区别?2.还有运算符的优先级顺序,书上说有到 关联性,+

问题描述:

C语言中,
1.*px++ *(px++) (*Px)++ 有什么区别?
2.还有运算符的优先级顺序,书上说有到 关联性,++,--,之类的是从右到左;*,/,%,+,-之类的是从左到右.这说的关联性是什么?是不是指运算顺序?
3.一元加 + 和 加法 + 的区别是什么?
1个回答 分类:综合 2014-09-25

问题解答:

我来补答
*px++等价于*(px++),跟(*Px)++ 完全是两种运算.很令人遗憾的是*(px++)不等同于px++;
*p;,因为后置++操作的效果是在当前子表达式结束(更准确的术语是“顺序点“sequence point)时生效,*(px++)实际上同义于*px;px=px+1
这个名词翻译成“结合性”的比较多吧.结合性影响的仅限于隐式加括号的位置,例如“前置++,--,!等运算符的的结合性是从右到左”就表示++++a隐式加上括号后等同于++(++a),即括号总是加在靠右的位置;*,/,%,+,-之类的运算符的的结合性是从左到右,就表示 a*b*a隐式加上括号后等同于(a*b)*c.结合性跟运算顺序是毫无关系的,这是极容易造成误解的地方
就是正号,例如表达式“+9”中的+就是一元的

再问: ��*px++ ���Dz��Ǻ�++ �� *���������������ȼ��й�ϵ��������++ ��* �����ȼ��ǵ�ͬ�İ���������⣬Ҳ���üǰ������Ҹ������ɡ�
再答: ���ǰ��++�ͺ���++�����ߵ����ȼ���ͬ�������++����Ϊ��������⡣��ʵ�Ϻ���++�����ȼ�����ǰ��++��ǰ��++�����ȼ��ͼ����������� * ��ͬ�� ����ҪҲ������ĵط����� ������Ը�����˳���Ǻ��޹�ϵ�ġ� ����ʹ�̿���Ҳδ�ؽ����������ֻ�������һ��������������Ϊ��
 
 
展开全文阅读
剩余:2000
上一页:这一步看不懂
下一页:这题详细解释