奇怪的运算符与指针

时间:2012-10-23 18:35:49

标签: c++ pointers operators

我正在阅读一些代码并遇到了这个问题。我现在没有整个上下文保存这一行。

cout<<(*--*++ptr+1)<< endl;

这个编译很好,当我们输入值时就可以工作..

它的声明是这样的。

char ***ptr ;

该运营商是什么,是否包含在标准中?

1 个答案:

答案 0 :(得分:7)

它不是一个单一的运营商,它是几个一元运营商的组合。它被解析如下:

*(--(*(++ptr))) + 1

因此,ptr1首先递增,然后解除引用,然后该值递减并再次取消引用。

相关问题