Heim  >  Artikel  >  Was ist der Unterschied zwischen *p+1 und *(p+1)

Was ist der Unterschied zwischen *p+1 und *(p+1)

zbt
zbtOriginal
2023-06-25 14:04:486620Durchsuche

Die Unterschiede zwischen *p+1 und *(p+1) sind: 1. Unterschiedliche Prioritäten In p+1 wird p zuerst dereferenziert, während in *(p+1) p+1 zuerst berechnet wird 2. Die Operationsobjekte sind unterschiedlich, p+1 dient dazu, p zuerst zu dereferenzieren, und (p+1) dient dazu, zuerst 1 zu p zu addieren. 3. Die Ergebnisse sind unterschiedlich, p+1 bedeutet, 1 zum Wert von zu addieren Das Objekt, auf das p zeigt, (p + 1) ist der Wert des nächsten Objekts, auf das p zeigt.

Was ist der Unterschied zwischen *p+1 und *(p+1)

Die Betriebsumgebung dieses Tutorials: Windows 10-System, DELL G3-Computer.

Was ist der Unterschied zwischen *p+1 und *(p+1)? Ich glaube, dass sich viele Internetnutzer darüber immer noch nicht im Klaren sind. Heute hat der Herausgeber relevante Tutorials zusammengestellt, in der Hoffnung, Ihnen zu helfen.

Was ist der Unterschied zwischen *p+1 und *(p+1)

1. Unterschiedliche Prioritäten

p+1 und (p+1) haben unterschiedliche Betriebsprioritäten. In C/C++ haben Operatoren (Dereferenzierungsoperator) und + (Additionsoperator) unterschiedliche Prioritäten. Der Additionsoperator hat eine niedrigere Priorität als der Dereferenzierungsoperator. Daher wird in p+1 zuerst p dereferenziert und dann in *(p+1) 1 hinzugefügt, da sich durch das Hinzufügen von Klammern die Priorität ändert, wird p+1 zuerst berechnet und dann dereferenziert.

2. Die Operationsobjekte sind unterschiedlich

Die von p+1 und (p+1) bedienten Objekte sind ebenfalls unterschiedlich. p+1 dereferenziert zunächst p, ruft das Objekt ab, auf das p zeigt, und fügt dann 1 zum Objekt hinzu. Und (p+1) addiert zunächst 1 zu p, um auf das nächste Objekt zu zeigen, und dereferenziert dann das neue Objekt.

3. Die Ergebnisse sind unterschiedlich

Die Ergebnisse von p+1 und (p+1) sind unterschiedlich. p+1 dereferenziert zunächst p und addiert 1, sodass das Ergebnis der Wert des Objekts ist, auf das p zeigt, plus 1. Und (p+1) addiert 1 zu p und dereferenziert es dann, sodass das Ergebnis der Wert des nächsten Objekts ist, auf das p zeigt.

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen *p+1 und *(p+1). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn