Interpretation des Subscript-Operators
Wie andere Operatoren kann der Indexoperator ([ ]) vom Benutzer neu definiert werden. Das Standardverhalten des Indexoperators, wenn er nicht überladen ist, besteht darin, den Arraynamen und den Index unter Verwendung der folgenden Methode zu kombinieren:
*((array-name) + (subscript))
Wie bei allen Additionen, an denen Zeigertypen beteiligt sind, wird die Skalierung automatisch zur Anpassung an die Größe des Typs ausgeführt. Daher ist der resultierende Wert nicht subscript Bytes vom Ursprung von array-name, sondern das subscript. Element des Arrays. (Weitere Informationen über diese Konvertierung finden Sie unter Additive Operatoren.)
Entsprechend wird die Adresse für mehrdimensionale Arrays anhand der folgenden Methode abgeleitet:
((array-name) + (subscript1 max2 * max3*...maxn) + subscript2 * max3...max*n) . . . + subscriptn))