ホームページ  >  記事  >  *p+1 と *(p+1) の違いは何ですか

*p+1 と *(p+1) の違いは何ですか

zbt
zbtオリジナル
2023-06-25 14:04:486856ブラウズ

*p 1 と *(p 1) の違いは次のとおりです: 1. 優先順位が異なります。p 1 では、p が最初に参照解除されますが、*(p 1) では、p 1 が最初に計算されます。 、操作オブジェクトが異なり、p 1 は最初に p を逆参照し、(p 1) は最初に p を 1 に加算します。 3. 結果は異なり、p 1 は が指すオブジェクトの値に 1 を加算します。 p,(p 1) は、p が指すオブジェクトの値に 1 を加算することで、次のオブジェクトの値になります。

*p+1 と *(p+1) の違いは何ですか

このチュートリアルの動作環境: Windows 10 システム、DELL G3 コンピューター。

*p 1 と *(p 1) の違いは何ですか?多くのネチズンはまだそれについてよくわかっていないと思いますが、今日、編集者があなたに役立つことを願って、関連するチュートリアルを提供しました。

*p+1 と *(p+1) の違いは何ですか

1. 異なる優先順位

p 1 と (p 1) は異なる演算優先順位を持ちます。 C/C では、演算子 (逆参照演算子) と (加算演算子) の優先順位が異なります。加算演算子は逆参照演算子より優先順位が低くなります。したがって、p 1 では、最初に p が逆参照されてから 1 が加算されますが、*(p 1) では、かっこを追加すると優先順位が変わるため、最初に p 1 が計算されてから逆参照されます。

2. 操作対象の違い

p 1 と (p 1) によって操作される対象も異なります。 p 1 は、まず p を逆参照し、p が指すオブジェクトを取得してから、そのオブジェクトに 1 を追加します。そして、(p 1) はまず p に 1 を加えて次のオブジェクトを指し、次に新しいオブジェクトを逆参照します。

3. 結果は異なります

p 1 と (p 1) の結果は異なります。 p 1 は、まず p を参照解除し、次に 1 を加算します。そのため、結果は、p が指すオブジェクトの値に 1 を加えたものになります。そして、(p 1) は p に 1 を加えて逆参照するので、結果は p が指す次のオブジェクトの値になります。

以上が*p+1 と *(p+1) の違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。