In diesem Tutorial lernen wir, mit Arrays zu arbeiten. Wir werden lernen, Array-Elemente in der C ++ - Programmierung anhand von Beispielen zu deklarieren, zu initialisieren und darauf zuzugreifen.
In C ++ ist ein Array eine Variable, die mehrere Werte desselben Typs speichern kann. Beispielsweise,
Angenommen, eine Klasse hat 27 Schüler, und wir müssen die Noten aller von ihnen speichern. Anstatt 27 separate Variablen zu erstellen, können wir einfach ein Array erstellen:
double grade(27);
Grade ist hier ein Array, das maximal 27 Elemente des double
Typs enthalten kann.
In C ++ können Größe und Typ der Arrays nach ihrer Deklaration nicht mehr geändert werden.
C ++ - Array-Deklaration
dataType arrayName(arraySize);
Beispielsweise,
int x(6);
Hier,
int
- Art des zu speichernden Elements- x - Name des Arrays
6
- Größe des Arrays
Zugriff auf Elemente in C ++ Array
In C ++ ist jedes Element in einem Array einer Zahl zugeordnet. Die Nummer wird als Array-Index bezeichnet. Mit diesen Indizes können wir auf Elemente eines Arrays zugreifen.
// syntax to access array elements array(index);
Betrachten Sie das Array x, das wir oben gesehen haben.

Einige Dinge, an die Sie sich erinnern sollten:
- Die Array-Indizes beginnen mit
0
. Die Bedeutung x (0) ist das erste im Index gespeicherte Element0
. - Wenn die Größe eines Arrays ist
n
, wird das letzte Element im Index gespeichert(n-1)
. In diesem Beispiel ist x (5) das letzte Element. - Elemente eines Arrays haben aufeinanderfolgende Adressen. Angenommen, die Startadresse von
x(0)
lautet 2120d. Dann ist die Adresse des nächsten Elementsx(1)
2124d, die Adresse vonx(2)
ist 2128d und so weiter.
Hier wird die Größe jedes Elements um 4 erhöht. Dies liegt daran, dass die Größe vonint
4 Bytes beträgt.
C ++ - Array-Initialisierung
In C ++ ist es möglich, ein Array während der Deklaration zu initialisieren. Beispielsweise,
// declare and initialize and array int x(6) = (19, 10, 8, 17, 9, 15);

Eine andere Methode zum Initialisieren des Arrays während der Deklaration:
// declare and initialize an array int x() = (19, 10, 8, 17, 9, 15);
Hier haben wir die Größe des Arrays nicht erwähnt. In solchen Fällen berechnet der Compiler automatisch die Größe.
C ++ - Array mit leeren Elementen
Wenn ein Array in C ++ eine Größe hat n
, können wir bis zu n Elemente im Array speichern. Was passiert jedoch, wenn wir weniger als n Elemente speichern?
Beispielsweise,
// store only 3 elements in the array int x(6) = (19, 10, 8);
Hier hat das Array x eine Größe von 6
. Wir haben es jedoch mit nur 3 Elementen initialisiert.
In solchen Fällen weist der Compiler den verbleibenden Stellen zufällige Werte zu. Oft ist dieser Zufallswert einfach 0
.

Wie füge ich Array-Elemente ein und drucke sie aus?
int mark(5) = (19, 10, 8, 17, 9) // change 4th element to 9 mark(3) = 9; // take input from the user // store the value at third position cin>> mark(2); // take input from the user // insert at ith position cin>> mark(i-1); // print first element of the array cout <> mark(i-1);
Beispiel 1: Anzeigen von Array-Elementen
#include using namespace std; int main() ( int numbers(5) = (7, 5, 6, 12, 35); cout << "The numbers are: "; // Printing array elements // using range based for loop for (const int &n : numbers) ( cout << n << " "; ) cout << "The numbers are: "; // Printing array elements // using traditional for loop for (int i = 0; i < 5; ++i) ( cout << numbers(i) << " "; ) return 0; )
Ausgabe
Die Zahlen sind: 7 5 6 12 35 Die Zahlen sind: 7 5 6 12 35
Hier haben wir eine for
Schleife verwendet, um von i = 0
bis zu iterieren i = 4
. In jeder Iteration haben wir gedruckt numbers(i)
.
We again used a range based for loop to print out the elements of the array. To learn more about this loop, check C++ Ranged for Loop.
Note: In our range based loop, we have used the code const int &n
instead of int n
as the range declaration. However, the const int &n
is more preferred because:
- Using
int n
simply copies the array elements to the variable n during each iteration. This is not memory-efficient.
&n, however, uses the memory address of the array elements to access their data without copying them to a new variable. This is memory-efficient. - We are simply printing the array elements, not modifying them. Therefore, we use
const
so as not to accidentally change the values of the array.
Example 2: Take Inputs from User and Store Them in an Array
#include using namespace std; int main() ( int numbers(5); cout << "Enter 5 numbers: " << endl; // store input from user to array for (int i = 0; i > numbers(i); ) cout << "The numbers are: "; // print array elements for (int n = 0; n < 5; ++n) ( cout << numbers(n) << " "; ) return 0; )
Output
Enter 5 numbers: 11 12 13 14 15 The numbers are: 11 12 13 14 15
Once again, we have used a for
loop to iterate from i = 0
to i = 4
. In each iteration, we took an input from the user and stored it in numbers(i)
.
Then, we used another for
loop to print all the array elements.
Example 3: Display Sum and Average of Array Elements Using for Loop
#include using namespace std; int main() ( // initialize an array without specifying size double numbers() = (7, 5, 6, 12, 35, 27); double sum = 0; double count = 0; double average; cout << "The numbers are: "; // print array elements // use of range-based for loop for (const double &n : numbers) ( cout << n << " "; // calculate the sum sum += n; // count the no. of array elements ++count; ) // print the sum cout << "Their Sum = " << sum << endl; // find the average average = sum / count; cout << "Their Average = " << average << endl; return 0; )
Output
The numbers are: 7 5 6 12 35 27 Their Sum = 92 Their Average = 15.3333
In this program:
- We have initialized a double array named numbers but without specifying its size. We also declared three double variables sum, count, and average.
Here,sum =0
andcount = 0
. - Then we used a range based
for
loop to print the array elements. In each iteration of the loop, we add the current array element to sum. - Wir erhöhen auch den Wert von count um
1
in jeder Iteration, so dass wir die Größe des Arrays bis zum Ende der for-Schleife erhalten können. - Nachdem wir alle Elemente gedruckt haben, drucken wir die Summe und den Durchschnitt aller Zahlen. Der Durchschnitt der Zahlen ist gegeben durch
average = sum / count;
Hinweis: Wir haben eine Fernkampfschleife for
anstelle einer normalen for
Schleife verwendet.
Für eine normale for
Schleife müssen wir die Anzahl der Iterationen angeben, die sich aus der Größe des Arrays ergibt.
Für eine Fernschleife sind for
solche Spezifikationen jedoch nicht erforderlich.
C ++ - Array außerhalb der Grenzen
Wenn wir ein Array der Größe 10 deklarieren, enthält das Array Elemente vom Index 0 bis 9.
Wenn wir jedoch versuchen, auf das Element bei Index 10 oder mehr als 10 zuzugreifen, führt dies zu undefiniertem Verhalten.