İçeriğe geç

Etiket: programlama

C Programlama-Dosyalama-1

Dosyalamaya Giriş

Değişkenler ve dizileriçinde depolanan veriler bellekte tutulur ve geçicidirler.Bu türde veriler hafızasına kaydedilmediği için program sonlanınca bellekten  kaybolurlar.

Dosyalama ise büyük miktarda veriyi kalıcı olarak tutmamızı sağlar.

C, her dosyayı basit olarak bitlerin art arda geldiği bir akış olarak görür.

Her dosya ya dosya sonu belirteci (end-of-file) ya da sistemde yönetici veri yapısı tarafından belirlenmiş  özel bir byte sayısı ile sonlanır.

Bir  dosya açıldığında, dosya ile ilgili bir akış ilişkilendirilir. Program çalışmaya başladığında, üç dosya ve bu dosyalarla ilişkili akışlar;

  • Standart giriş(standart input)
  • Standart çıkış(standart output)
  • Standart hata(standart error)
Yorum Bırak

C Programlama Bellek ve Adresleme-2

İşaretçiler ve Diziler

Diziler ve işaretçiler, C’de özel bir biçimde ilişkilidirler. Birbirleri yerine hemen hemen her yerde kullanılabilirler. Bir dizi ismi, sabit bir işaretçi olarak düşünülebilir. Bu yüzden, bir dizinin herhangi bir elemanına işaretçi ile de erişilebilir.

işaretçiler

Not: Dizilerde aslında birer işaretçidir. Bunun için doğrudan aynı tipteki bir işaretçiye atanabilirler.

Ayrıca, i bir tamsayı olmak üzere aşağıdaki iki ifade aynı anlamdadır.

  •  kutle[i];
  • *(p + i);

Bunun sebebi, p işaretçisi kutle dizisinin başlangıç adresini tutmuş olmasıdır. p+i işlemi ile i+1. elemanın adresi, ve *(p+i) ile de bu adresteki değer hesaplanır. *(p+i); —-> p nin gösterdiği adresten i blok ötedeki sayıyı hesapla

Örnek: *(p+3);

  • Bu deyimde 3, işaretçinin offsetidir.
  • İşaretçi, dizinin başlangıç adresini gösterirken, ve offset değeri dizi belirteciyle eştir. offset dizinin hangi elemanının kullanılacağını belirtir
  • Bu gösterime işaretçi/offset gösterimi denir.
  • Parantezler gereklidir çünkü * operatörünün önceliği + operatörünün önceliğinden yüksektir.
  • Parantezler olmadan yukarıdaki ifade, *p’ye 3 eklerdi. (yani, p’nin dizinin başlangıcını gösterdiği düşünülürse, kutle[0]’a 3 eklenirdi.)

Fonksiyon Parametresi Olan İşaretçiler:

C programlama dilinde fonksiyon parametreleri

  • Değer geçerek (pass by value)
  • Adres geçerek (pass by reference) olarak geçilebilirler.
Yorum Bırak

C Programlama Bellek ve Adresleme

İşaretçilere Giriş:

  • 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 ile belleğin sahip olduğu üst değere bağlı olarak değişebilir.
  • 1 GB bellek,

1024*1024*1024=1073741824 adet gözden oluşur.

 Bir programlama dilinde, belli bir tipte değişken tanımlanıp ve bir değer atandığında, o değişkene dört temel özellik eşlik eder:

  1. Değişkenin adı
  2. Değişkenin tipi
  3. Değişkenin sahip olduğu değer (içerik)
  4. Değişkenin bellekteki adresi

Değişken türlerinin bellekte kapladığı alanlar:

byt

Bellek adreslerinin nasıl olduğunu yapıldığını inceleyelim:

Yorum Bırak

C Programlama Fonksiyon Örneği

Merhaba arkadaşlar. Bu örneğimizde bir öğrenci notu parametre olarak alan bir fonksiyonumuz olacak ve bu fonksiyon girilen nota göre öğrencinin harf notunu döndürecek…

1.ana fonksiyonumuz olan main fonksiyonundan önce kendimiz oluşturacağı fonksiyonun prototipini yazıyoruz. İstersek bu kısımda istersek main fonksiyonundan sonra bu fonksiyonun yapacağı işlemleri belirtmemiz gerekiyor. örneğimizde fonksiyonun…

2 Yorum

C Programlama Fonksiyonlar

  • Fonksiyonlar karmaşık yapılı programların karmaşıklığını azaltmak ve bu programları modüler bir yapıya kavuşturmak için kullanılırlar.
  • Programcıların tekrarlanan kod yazmalarını önlerler.
  • Fonksiyon belirli bir adı olan program parçasıdır.
  • Fonksiyonların çalışabilmesi için bir başka fonksiyondan adı ile çağrılması gerekmektedir.

Bu zamana kadar programlarımızı çalıştırdığımızda otomatik olarak çalışan main() de bir fonksiyondur. Bu fonksiyonu biz çağırmayız veya başka bir fonksiyon içinden çağrılmasına gerek yoktur.

Bir main() fonksiyonu içinden bir başka fonksiyon çağrılabilir.

Oluşturduğumuz bir fonksiyon içerisinden farklı bir fonksiyon çağrılabilir.


Her fonksiyonun bir adı ve fonksiyona gelen değerleri gösteren parametreleri (bağımsız değişkenleri) vardır. Fonksiyonlarda bu parametreler alınarak çeşitli işlemlere tabi tutulur ve bir değer hesaplanır. Bu değer, çıktı veya geri dönüş değeri (return value) olarak adlandırılır. Bir fonksiyona kaç giriş olursa olsun sadece bir çıkışı vardır.

Örneğin toplama işlemi yapan Topla() adında bir fonksiyonumuz olsun. Bu fonksiyona int tipinde X ve Y parametreleri alındığında fonksiyondan çıkan değer X+Y olacaktır.

Bunu birde kod üzerinden gerçekleştirelim:

Yorum Bırak