“+ +”运算符的含义(不是++)
这个问题在这里已经有了答案:
没有+ +运算符。 有一个+运算符(以一元和二元形式出现)和一个++运算符,这里不使用。
每个那些的是二进制+运算符,随后通过一个或多个一元+运算符。
这个:
c = c + + "d";
相当于
c = c + (+ "d");
这个:
c = c + + + "d";
相当于:
c = c + (+ + "d");
要么:
c = c + (+ (+ "d"));
等等。
第一个+是一个二进制加法,它计算c和第二项的和。
其余的+是一元加操作符。 在+ "d" , "d"的类型为const char[2] ,并衰减为const char* 。 然后将+应用于无效的指针,并返回相同的const char* 。
c + + + "d"相当于c + (+(+"d")) 。
这只是很多一元加号。
链接地址: http://www.djcxy.com/p/1975.html上一篇: Meaning of "+ +" operator (not ++)
下一篇: >> actually do?
