Zeigerausdrücke verstehen: ptr , ptr und *ptr
In der C-Programmierung sind diese drei Ausdrücke häufig Wird verwendet, um Zeiger und die Werte, auf die sie zeigen, zu manipulieren. Das Verständnis ihres Verhaltens ist entscheidend für die effektive Arbeit mit Zeigern.
1. *ptr
- Dieser Ausdruck dereferenziert effektiv zuerst den Zeiger und gibt den Wert zurück, auf den er zeigt.
-
Dann erhöht er den Zeiger um eine Einheit und zeigt auf das nächste Element im Array oder das nächste Zeichen im string.
- Wenn ptr beispielsweise auf das erste Element eines Arrays zeigt, gibt *ptr den Wert dieses Elements zurück und erhöht dann ptr, um auf das zweite Element zu zeigen.
2. * ptr
- Im Gegensatz zum vorherigen Ausdruck erhöht dieser zuerst den Zeiger
um eine Einheit.-
Dann wird der Zeiger dereferenziert
gibt den Wert zurück, auf den der Zeiger jetzt zeigt.- Dies ist nützlich, wenn Sie es brauchen Greifen Sie auf den Wert des nächsten Elements zu, ohne den aktuellen Zeiger zu dereferenzieren.
3. *ptr
-
Dieser Ausdruck erhöht direkt den Wert an der Stelle, auf die ptr zeigt
.-
Zuerst dereferenziert er den Zeiger
und gibt den Wert zurück, auf den es zeigt.-
Dann wird der Wert erhöht value
um eine Einheit.- Dies kann verwendet werden, um den Wert zu ändern, auf den ptr zeigt.
Beispiele:
int arr[5] = {1, 2, 3, 4, 5};
int *ptr = arr;
printf("%d ", *ptr++); // Prints 1 and increments ptr to the second element
printf("%d ", *++ptr); // Increments ptr to the third element and prints 3
printf("%d\n", ++*ptr); // Increments the value at the third element and prints 4
Nach dem Login kopieren
Ausgabe:
1 3 4
Nach dem Login kopieren
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen „*ptr', „*ptr' und „ptr' in C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!