Dizi, aynı veri türündeki sıralı öğeleri depolamak için kullanılan bir veri yapısıdır. Bir elemanın dizideki konumuna indeks denir. İndeksler 0'dan (n-1) başlar.

Bu makalede, C'de dizilerin nasıl kullanılacağını öğreneceksiniz. Buradaki kavramların çoğu diğer programlama dillerinin çoğuyla örtüşmektedir, bu yüzden bunları not aldığınızdan emin olun.

Dizileri Tanımlama

Bir diziyi tanımlamak için, veri türünü ve ardından dizi adını ve köşeli parantezleri yazın:

int yaş[8];

Köşeli parantezlerin içinde dizinin alacağı beklenen veri öğesi sayısı bulunur. Aynı anda iki dizi tanımlamanız gerekiyorsa, bunu aşağıdaki gibi yapabilirsiniz. Bunları ayrı ayrı bildirmenin tercih edilen yol olduğunu belirtmekte fayda var.

int yaş[8], boy[8];

Bir diziyi aşağıdaki gibi bildirmek de mümkündür:

int[8] yaş;

Yukarıdaki sözdizimi şu anlama gelir yaş bir tür dizisine işaretçidir int. "İşaretçi sözdizimini" kullanabilmenize rağmen, ilki tercih edilir.

İlgili: Python, C++, JavaScript ve C Kullanarak Bir Sayının Çarpım Tablosu Nasıl Görüntülenir

instagram viewer

Bazen dizinizde kaç tane eleman olmasını beklediğinizi bilemeyebilirsiniz. Böyle bir durumda, diziyi eleman sayısı olmadan bildirmeniz gerekir. Aşağıdaki örneğe bakın:

int yaş[];

Diziler Üzerindeki İşlemler

Bir dizi öğesine başvuruda bulunmak için, dizi adını ve ardından dizinini köşeli parantez içinde yazın (örn. yaş[5]). Değişkenleri köşeli parantez içinde de kullanabilirsiniz:

yaş[x+y]

Bu değişkenlerin hesaplanmasının 0 ila (n-1) aralığında olduğundan emin olmanız gerekir. Aksi takdirde derleme hatası alırsınız.

başlatma

Dizi elemanları, bildirimde veya programda daha sonra verilebilir. Dizi başlangıçta boş değerlere sahip olduğundan, bu eylem başlatma olarak bilinir.

Aşağıdaki örneğe bakın. Dizideki bir öğenin değerini ve dizinini yazdırır. Satır 5, tamsayı dizisini başlatmak için bir başlatıcı listesi kullanır.

#Dahil etmek 
int ana (boşluk) {
printf("%s%11s
", "Öğe", "Değer");
int n[4] = {1, 4, 9, 16};
// dizi öğelerini tablo biçiminde çıkar
için (size_t i = 0; ben < 4; ++i) {
printf("%5u%10d
", ben, n[i]);
}
}

Çıktı:

Eleman Değeri
0 1
1 4
2 9
3 16

Dizeleri Depolamak için Dizileri Kullanma

Diziler, yalnızca tamsayıları değil, dizeleri depolamak için de kullanılabilir. Bu şekilde kullanıldığında, başlatıcı listesindeki her öğe için tek tırnak eklemeyi unutmayın.

char meyvesi[]= ['b', 'e', ​​'r', 'r', 'y', '\0' ];

Dikkat edin karakter veri türü kullanılır. Bir dize değişmezi aslında tek tek karakterlerden oluşur ve bu yüzden karakter.

İlgili: C++ Programlama Nasıl Öğrenilir: Başlamak için 6 Site

Gösterilen dizi bir kaçış dizisiyle biter (\0). Bu, boş karakter olarak adlandırılan bir dize sonlandırma karakteridir. Bir dizi listesini başlatırken bunu her zaman eklemelisiniz.

Aslında bir karakter dizisini başlatmanın daha basit bir yolu var. Bir karakter dizisinin her zaman özel bir bitiş karakterine sahip olduğunu bilmeniz için önce eski yaklaşımı gösterdik (\0). Yeni başlayan programcılar için son öğeyi unutarak dizi boyutunu birer birer küçültmek yaygın bir hatadır(\0).

char string1[5] = "Kod";

Kullanıcı girdisi almanız ve bir dizide saklamanız gerektiğini varsayalım. Standart kütüphane işlevini kullanabilirsiniz tarama bunun için.

Yine de, işlevin beklemesi gereken karakter sayısını belirtmeniz gerekir. Bunun nedeni ise tarama dizi boyutunu kontrol etmez ve dizinin ötesindeki adreslere veri yazarak arabellek taşmasına neden olabilir.

Kullan %s Beklenen maksimum girişi tanımlamak için dönüşüm belirteci. NS tarama işlev, boşluk, sekme, yeni satır veya dosya sonu göstergesiyle karşılaşılıncaya kadar girilen tüm karakterleri okuyacaktır.

C Programlamanızı Geliştirmek

Öğrenmek için kullandığınız kaynaklar, öğrenme hevesiniz kadar önemlidir. İyi uygulama olmadan öğrenmek, programlama yolculuğunuzu zorlaştıracaktır.

C, nesne yönelimli olmadığı için öğrenmesi özellikle zor bir dildir. Neyse ki, C programlamada ustalaşmanıza yardımcı olacak çok sayıda kaynağımız var.

PaylaşCıvıldamakE-posta
C Programlamada Bugün Ustalaşmak için Bu Eğitim Kaynaklarını Kullanın

Hiç C'de temel programlamayı nasıl yapacağınızı bilmek istediniz mi? Şimdi bu eğitim paketi sayesinde yapabilirsiniz.

Sonrakini Oku

İlgili konular
  • Programlama
  • C Programlama
  • Programlama
  • Programlama dilleri
Yazar hakkında
Jerome Davidson (23 Makale Yayınlandı)

Jerome, MakeUseOf'ta Personel Yazarıdır. Programlama ve Linux ile ilgili makaleleri kapsar. Aynı zamanda bir kripto meraklısı ve kripto endüstrisini her zaman takip ediyor.

Jerome Davidson'dan Daha Fazla

Haber bültenimize abone ol

Teknik ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için bültenimize katılın!

Abone olmak için buraya tıklayın