Şuana kadar oluşturduğumuz değişkenlerimizi hep 1 değer tutuyordu. Örneğin int i = 5; dediğimizde i değişkeni sadece 1 tane sayı değerini tutabiliyor. Kod yazarken genelde tek bir değerle değil bir değerler dizisine ihtiyacımız olur. Bu tip durumlarda array kullanıyoruz.
Array bellekte sıralı bir şekilde tutulur. İndeksi (yani sıra numarası) 0 dan başlar.

Örnek:
#include <iostream>
using namespace std;
int main() {
int dizi[] = {3,5,7,11};
int dizi_count = 4;
for (int i = 0; i < dizi_count; i++)
{
cout << dizi[i] << endl;
}
//3
//5
//7
//11
}
array’in ismi arrayin ilk elemanının adresini tutar. Bir adresinin değerini almak için * operatörünü kullanıyoruz. Aşağıdaki örneği inceleyin
#include <iostream>
using namespace std;
int main() {
int dizi[] = {3,5,7,11};
int dizi_count = 4;
cout << dizi << endl; // 000000AE09D7FAF0
cout << dizi+1 << endl; // 000000AE09D7FAF4
cout << dizi+2 << endl; // 000000AE09D7FAF8
cout << dizi+3 << endl; // 000000AE09D7FAFC
cout << *dizi << endl; //3
cout << *(dizi + 1) << endl; //5
cout << *(dizi + 2) << endl; //7
cout << *(dizi + 3) << endl; //11
}
arrayleri fonksiyonlarımıza atabiliriz. Arrayleri fonksiyonlara atarken arrayin bellekteki adresini ve arrayin boyutunu fonksiyona veriyoruz.
#include <iostream>
using namespace std;
float aritmetik_ortalama(float* arr, int size) {
float toplam{};
for (int i = 0; i < size; i++)
toplam += arr[i];
return toplam / size;
}
int main() {
const int dizi_size = 10;
float dizi[dizi_size]{38,46,1,6,23,3,4,62,6,2};
float sonuc = aritmetik_ortalama(dizi, dizi_size);
cout << "sonuc: " << sonuc << endl; //sonuc: 19.1
}
Arrayimizi tanımlarken boyutunu const ile belirtmemiz gerekli çünkü array’in boyutu değişmez.


Leave a Reply