Verbindung Zwischen Arrays Und Zeigern
Swipe um das Menü anzuzeigen
Arrays und Zeiger sind eng miteinander verbunden. Der Name eines Arrays kann als Zeiger auf sein erstes Element behandelt werden.
main.cpp
12345678#include <iostream> int main() { int arr[5] { 12, 21, 27, 10, 11 }; // Using dereference operator (`*`) to access the value std::cout << *(arr); }
Arrays werden typischerweise gebildet, indem Elemente in zusammenhängenden Speicherblöcken angeordnet werden, wobei jedes Element in aufeinanderfolgenden Speicheradressen gespeichert ist. Dies ermöglicht die Anwendung von Zeigerarithmetik, um auf jedes Element innerhalb des Arrays zuzugreifen.
main.cpp
12345678#include <iostream> int main() { float arr[5] { 2.7, 9.9, 1.0, 0.3, 2.2 }; std::cout << arr[3] << std::endl; std::cout << *(arr + 3) << std::endl; }
Tatsächlich führt der Compiler diese Operation automatisch aus. Er übersetzt Array-Klammern in den Dereferenzierungsoperator mit Zeigerarithmetik unter Verwendung des Array-Namens. Dies bedeutet, dass die Reihenfolge geändert werden kann, sodass der Index außerhalb der Klammern und der Array-Name innerhalb der Klammern stehen kann (index[array_name]).
main.cpp
1234567#include <iostream> int main() { float arr[5] { 2.7, 9.9, 1.0, 0.3, 2.2 }; std::cout << 3[arr] << std::endl; }
Zur Klarheit an die konventionelle Syntax halten, diese Form kann Leser ohne Vorkenntnisse verwirren.
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen