c arrays with examples
C ++ 'da Diziler Nelerdir? Neden Kullanışlıdırlar?
Bunda Tam C ++ Eğitim Serileri , bu eğitimde C ++ 'daki Dizilere bir göz atacağız.
C ++ 'daki dizi basitçe bir veri koleksiyonu olarak tanımlanabilir.
Tasarladığım uygulamalardan biri tamsayı veri türünde 100 değişken gerektiriyorsa. Daha sonra değişken bildirimini kullanarak 100 farklı tamsayı değişkeni tanımlamam gerekecek. Bu da gerçekten külfetli olacak.
Bunun yerine, bitişik 100 bellek konumunu tutan tek bir değişken bildirsem nasıl olur? Bu, dizilerin resmin içine girdiği yerdir.
Ne öğreneceksin:
C ++ 'da Diziler
Bir dizi, aynı veri türündeki değişkenlerin bir koleksiyonu olarak tanımlanabilir ve bitişik bellek konumlarına sahiptir.
Java'da bir dizi nesne bildirmek
Yani 100 tam sayılık bir dizi tanımlarsam, bellek temsili bir şekilde aşağıda gösterildiği gibi olacaktır:

Yukarıda gösterildiği gibi, 0… 99 bu dizi için bellek konumlarıdır ve bunlar bitişiktir. Boş paneller, gerçek dizi öğeleridir. Bir dizinin münferit elemanlarına indeks kullanılarak erişilebilir. Yukarıdaki diyagramda, dizinin ilk indeksi 0 iken son indeks 99'dur (çünkü bu 100 elemanlık bir dizidir). 0 1 2 3 4 5 ……. … .. 99.
Bir dizinin başlangıç indeksinin her zaman 0 olduğuna dikkat edin. Dolayısıyla, n elemanlı bir dizi için, dizinin başlangıç indeksi 0 olacak ve son indeks n-1 olacaktır.
Dizi Bildirin
C ++ 'da dizi bildirimi genellikle aşağıda gösterildiği gibi görünür:
datatype arrayName ( arraySize );Yukarıdaki bildirim tek boyutlu bir dizi içindir. Burada veri türü, C ++ 'da kabul edilebilir herhangi bir veri türüdür. 'DiziAdı', oluşturduğumuz dizinin adıdır, diziSize ise her zaman köşeli parantez (()) içine alınır ve dizinin tutacağı öğelerin sayısıdır. ArraySize değerinin her zaman sabit bir ifade olması gerekir.
Örneğin, Tamsayı türünde 10 öğeli myarray adında bir dizi bildirmem gerekirse, bildirim şöyle görünecektir: :
int myarray (10);Benzer şekilde, 20 öğeli double türündeki bir 'maaş' dizisi için bildirim aşağıda gösterildiği gibi görünecektir:
double salary ( 20 );Bir Dizi Başlatma
Bir dizi bildirildiğinde, uygun değerlerle başlatılabilir. Diziye atanan değerlerin sayısı, bildirimde belirtilen dizinin boyutunu asla aşmamalıdır.
Öyleyse, 5 boyutunda bir dizi tanımlayalım ve tamsayı yazıp myarray olarak adlandıralım.
int myarray(5);Değerleri dizi elemanlarına aşağıdaki gibi tek tek atayabiliriz:
myarray(0) = 1; myarray(1) = 2; myarray(2) = 3; myarray(3) = 4; myarray(4) = 5;Her bir öğeyi başlatmak yerine, aşağıda gösterildiği gibi bildirim sırasında tüm bir diziyi başlatabiliriz:
int myarray(5) = {1, 2, 3, 4, 5};Yukarıda görüldüğü gibi, dizi elemanlarının değerlere ilklendirilmesi küme parantezleri ({}) kullanılarak yapılır.
Yukarıdaki başlatmanın bir sonucu olarak, dizi aşağıda gösterildiği gibi görünecektir:

Ayrıca herhangi bir boyut belirtmeden ve sadece öğeleri belirterek dizileri başlatabiliriz.
Bu, aşağıda gösterildiği gibi yapılır:
int myarray() = {1, 2, 3, 4, 5};Bu durumda, bir dizinin boyutu belirtilmediğinde, derleyici boyutu dizinin başlatıldığı öğelerin sayısına eşit bir boyut atar. Bu nedenle yukarıdaki durumda, dizimin boyutu 5 olacaktır.
en iyi ücretsiz kötü amaçlı yazılım temizleme aracı nedir
Dizi Öğelerine Erişim
Dizi öğelerine dizi dizini kullanılarak erişilebilir. Dizi dizini her zaman 0'dan başlar ve arraySize-1'e kadar gider.
Dizi öğelerine erişim sözdizimi aşağıdaki gibidir:
arrayName(index)Örnek olarak yukarıda açıklanan myarray'i alalım.
4'e erişmemiz gerekirseincimyarray öğesi, o zaman bunu şu şekilde yapabiliriz:
myarray(3);2 atamamız gerekirsendmyarray elemanını bir tamsayı değişkenine, sonra aşağıdaki gibi yaparız:
int sec_ele = myarray(1);C ++ 'da, dizi öğelerine bir dizinin boyutunun ötesinde erişirsek, programın iyi derleyeceğini, ancak sonuçların beklenmedik olabileceğini unutmayın.
Tüm dizi öğelerine aynı anda erişmemiz gerekirse, o zaman bir dizinin tüm öğeleri arasında gezinmemizi ve bir indeks değişkeni kullanarak onlara erişmemizi sağlayacak C ++ yinelemeli yapıları kullanabiliriz.
Tüm yapıların dışında, for döngüsü dizilere erişmek için idealdir çünkü tanım gereği 'for' döngüsü bir dizide gezinmek için bir dizin değişkeni ve ayrıca her yinelemeden sonra otomatik artışlar kullanır.
Örneğin,daha önce tanımlanan aynı myarray'i alın. Myarray öğelerine erişim kodu, for döngüsü kullanılarak aşağıda gösterildiği gibidir:
for(int i = 0;i<5;i++) { cout<Yukarıdaki kodda, dizilim 0'dan 5'e kadar I indeks değişkeni kullanılarak çaprazlanır ve öğeler her yinelemeden sonra yazdırılır.
örnekli gereksinim izlenebilirlik matrisi şablonu
Yukarıdaki kodun çıktısı:
1
iki
3
4
5
Yukarıda gösterildiği gibi dizi öğelerine erişmenin yanı sıra, dizi öğelerine de erişebilir ve bunları, tüm farklı işlemleri gerçekleştirmek için değişkenleri kullandığımız şekilde diğer operatörlerle kullanabiliriz.
Bir dizideki tüm öğelerin toplamını yazdıran aşağıdaki programı düşünün:
#include include using namespace std; int main() { int myarray(5) = {10, 20,30,40,50}; int sum = 0; for(int i = 0;i<5;i++) { sum += myarray(i); } cout<<'Sum of elements in myarray:
'<Yukarıdaki kodda, myarray adlı bir dizi bildirip başlatıyoruz. Ayrıca sum değişkenini 0 olarak başlatırız, Sonra bir for döngüsü kullanarak myarray arasında geçiş yaparız ve her bir dizi elemanını toplama ekleriz.
Program tarafından verilen son çıktı, dizideki tüm öğelerin toplamıdır ve aşağıdaki gibi görünecektir:
Myarray'deki öğelerin toplamı:
150
Programın gösterdiği gibi, dizi öğelerine tek tek veya bir yinelemeli döngü kullanarak tek seferde erişebiliriz ve ayrıca değişkenler üzerinde işlemler gerçekleştirdiğimiz gibi dizi öğeleri üzerinde çeşitli işlemler gerçekleştirebiliriz.
Sonuç
Bununla birlikte, bir dizinin temellerini açıklayan diziler hakkındaki bu makalenin sonuna geldik - dizi öğelerini bildirmek, başlatmak ve bunlara erişmek.
Önümüzdeki birkaç makalemizde, diğer kavramların yanı sıra çok boyutlu diziler, dizi işaretçisi, işlevdeki diziler vb. Hakkında daha fazla tartışacağız.
Bu bilgilendirici öğreticiden C ++ 'da Diziler hakkında daha fazla bilgi edinmiş olmanız gerektiğini umuyoruz.
=> Kolay C ++ Eğitim Serisini Okuyun.
Önerilen Kaynaklar
- STL'deki Diziler
- C ++ 'da Sıralamayı Örneklerle Birleştirme
- C ++ 'da Çok Boyutlu Diziler
- C ++ 'da İşlevlerle Dizileri Kullanma
- VBScript Dizileri: DIM, REDIM, Bölme ve Ubound Dizi İşlevlerini Kullanma
- Örneklerle Python DateTime Eğitimi
- Örneklerle Unix'te Kesme Komutu
- Örneklerle C ++ 'da Yığın Sıralama