11.5 Fonksiyon Parametresi Olan Göstericiler

11.5   Fonksiyon Parametresi Olan Göstericiler C (ve C++) programlama dilinde fonksiyon parametreleri değer geçerek (pass by value) yada adres geçerek (pass by reference) olarak geçilebilir. Bölüm 8’deki uygulamalarda fonksiyonlara parametreler değer geçerek taşınmıştı. Bu şekilde geçirilen parametreler, fonksiyon içersinde değiştirilse bile, fonksiyon çağılıldıktan sonra bu değişim çağrılan yerdeki değerini değiştirmez. Fakat, bir parametre adres geçerek 

Devamını Oku…

11.4 Gösterici ve Diziler Arasındaki İlişki

    11.4   Gösterici ve Diziler Arasındaki İlişki   C dilinde göstericiler ve diziler arasında yakın bir ilişki vardır. Bir dizinin adı, dizinin ilk elemanının adresini saklayan bir göstericidir. Bu yüzden, bir dizinin herhangi bir elemanına gösterici ile de erişilebilir. Örneğin:

şeklinde bir bildirim yapılsın. Buna göre aşağıda yapılan atamalar geçerlidir:

İlk 

Devamını Oku…

11.3 Gösterici Aritmetiği

11.3   Gösterici Aritmetiği Göstericiler kullanılırken, bazen göstericinin gösterdiği adres taban alınıp, o adresten önceki veya sonraki adreslere erişilmesi istenebilir. Bu durum, göstericiler üzerinde, aritmetik işlemcilerin kullanılmasını gerektirir. Göstericiler üzerinde yalnızca toplama (+), çıkarma (-), bir arttırma (++) ve bir eksiltme (–) operatörleri işlemleri yapılabilir. Aşağıdaki gibi üç tane gösterici bildirilmiş olsun:

Bu göstericiler 

Devamını Oku…

11.2 Gösterici Nedir?

11.2   Gösterici Nedir? Gösterici, bellek alanındaki bir gözün adresinin saklandığı değişkendir. Göstericilere veriler (yani değişkenlerin içeriği) değil de, o verilerin bellekte saklı olduğu hücrenin başlangıç adresleri atanır. Kısaca gösterici adres tutan bir değişkendir. Bir gösterici, diğer değişkenler gibi, sayısal bir değişkendir. Bu sebeple kullanılmadan önce program içinde bildirilmelidir. Gösterici tipindeki değişkenler şöyle tanımlanır:

 

Devamını Oku…

11.1 Değişken ve Bellek Adresi(Gösterici-Pointer-İşaretçi-Göseterge)

pointer = işaretçi = gösterici = gösterge Anlatımda, gösterici terimini kullanacağız. 11.1   Değişken ve Bellek Adresi Bilgisayarın ana belleği (RAM) sıralı kaydetme gözlerinden oluşmuştur. Her göze bir adres atanmıştır. Bu adreslerin değerleri 0 ila belleğin sahip olduğu üst değere bağlı olarak değişebilir. Örneğin 1GB MB bir bellek, 1024*1024*1024 = 1073741824 adet gözden oluşur. Değişken tiplerinin bellekte 

Devamını Oku…

10.7 Dizilerin Fonksiyonlarda Kullanılması

10.7   Dizilerin Fonksiyonlarda Kullanılması Diziler de sıradan değişkenler gibi bir fonksiyona parametere olarak akratılabilir. Fakat, aktarma kuralı biraz farklıdır. Her zaman dizinin yanında boyutunun da bilinmesi gerekir. Program 10.10’da, bir dizinin elemanlarının yazdırılması işi bir fonksiyona yaptırılmıştır. Fonkisyona parametre olarak dizinin yanında boyutu da ilave edilmiştir. İnceleyiniz. Program 10.10: Bir dizinin yazdırılması

ÇIKTI

 

Devamını Oku…

10.6 Çok Boyutlu Diziler

10.6   Çok Boyutlu Diziler Bir dizi aşağıdaki gibi bildirildiğinde bir boyutlu (tek indisli) dizi olarak adlandırılır. Bu tip dizilere vektör denir.

Bir dizi birden çok boyuta sahip olabilir. Örneğin iki boyutlu b dizisi şöyle tanımlanabilir:

İki boyutlu diziler matris olarak adlandırılır. ilk boyuta satır, ikinci boyuta sütün denir. Yukarıda b matrisinin eleman sayısı 9×4=36 dır. Bu durumda, genel olarak bir dizi şöyle gösterilir: 

Devamını Oku…

10.5 Karakter Dizileri (Strings)

10.5   Karakter Dizileri (Strings) C dilinde, karakter dizileri oldukça sık kullanılır. Sadece karakter dizilerine özel olarak, karakter dizilerinin sonuna sonlandırcı karakter olarak adlandırılan bir simge eklenir. Sonlandırcı karakter, işlemlerin hızlı ve etkin bir biçimde yapılabilmesine olanak sağlar[2]. Sonlandırıcı karakter: dizinin bittiği yeri gösterir, ASCII tablosunun sıfır numaralı (‘\0’) karakteridir. Karakter dizilerine iki şekilde başlangıç değeri verilebilir. 

Devamını Oku…

10.4 Sıralama (Sorting)

10.4   Sıralama (Sorting) Bazı uygulamalarda bir grup sayının büyükten küçüğe, veya küçükten büyüğe, doğru sıralanması gerekebilir. Bu tip sıralama problemleri için çeşitli algoritmalar geliştirilmiştir. Sıralama mantığını anlamadan önce bir dizinin en büyük (veya en küçük) elemanının nasıl bulunduğunu inceleyelim. Program 10.3, bir dizinin en büyük elemanını bulup ekrana yazar. Program 10.3: Bir dizinin en büyük 

Devamını Oku…

10.3 Dizileri Yazdırma/Okuma

10.3   Dizileri Yazdırma/Okuma printf ve scanf fonksiyonları bir dizinin okunması ve yazdırılması için de kullanılır. Örneğin bir A dizisinin aşağıdaki gibi bildirildiğini varsayalım:

Bu dizinin elemanlarını klavyeden okumak için:

daha sonra bu değerlerini ekrana yazmak için:

Program 10.1, klavyeden girilen N = 10 adet sayının ortalamasını hesaplar. Ortalama  formülü ile hesaplanabilir. Program 10.1: 10 sayının ortalamasını hesaplar

ÇIKTI

 

Devamını Oku…