Indizierung in ein Array in C ++

In C ++ müssen Sie ein zur Verfügung stellen Index ein bestimmtes Element in dem Array zuzugreifen. Ein Index muss eine Zählertyp (so beschaffen sein, int), Wie hier gezeigt:

Nscores [11] = 10 & supmin;

Das ist vergleichbar mit der Art und Weise, dass Mietwagen sind gezählt. Doch im Gegensatz zu den Menschen, startet C ++ mit 0, wenn seine Arrays Nummerierung. Damit ist die erste Punktzahl in der Anordnung Nscores ist Nscores [0].

Wie funktioniert das genau? Nun, denken Sie an einen Mietwagen Parkplatz. Die Abbildung zeigt, wie Mietwagen sind in der Regel in ihre Parkplätze nummeriert. Das erste Auto in der Reihe B trägt die Bezeichnung B1. Für B11, bewegen Sie einfach den Blick zehn Autos auf der rechten Seite.

bild0.jpg

C ++ hat eine ähnliche Sache. Zur Ausführung der Anweisung Nscores [11] = 10, C ++ beginnt mit der Adresse des ersten Elements in Nscores. Es bewegt sich dann auf der rechten Seite 11 Räume und speichert eine 10 an dieser Stelle. Dies ist graphisch in der folgenden Abbildung dargestellt.

image1.jpg

Die Tatsache, daß C ++ auf Null zu zählen beginnt führt zu einem Punkt, der immer Anfänger verwechselt. Die Aussage

int Nscores [100] -

erklärt 100 Partituren, die von 0 bis 99. Der Ausdruck nummeriert sind

Nscores [100] = 0- // dies ist ein Fehler,

nullt das erste Element aus darüber hinaus das Ende des Arrays. Das letzte Element in dem Array ist Nscores [99]. Die C ++ Compiler wird nicht diesen Fehler und wird gerne dieses nicht Element zugreifen, die sehr häufig auf das Programm führt eine andere Variable versehentlich Zugriff. Diese Art von Fehler ist sehr schwer zu finden, weil die Ergebnisse so unberechenbar sind.

Menü