İçeriğe geç

Etiket: algoritma

Yazılıma Yeni Başlayacaklara Tavsiyeler #2

Bir önceki yazımda konuya giriş yapmıştım ve ilk madde olarak ingilizce konusuna değindim. Yazıyı buradan okuyabilirsiniz.

Şimdi gelelim kendimce diğer vereceğim tavsiyelere. 🙂

2.Algoritma Mantığını Öğrenin

Algoritma nedir? Algoritmik nasıl düşünebilirsiniz bununla ilgili araştırma yapın.
Yazılım genel olarak algoritmalar üzerine kuruludur. Bu yüzden bu madde çok önemli. 🙂

3. Uzmanlaşmak İstediğiniz Alanı Belirleyin

Yazılım birçok alana ayrılmaktadır. Tabii ki bütün bu alanların hepsinde uzman olmazsınız. Hemen hemen her dil hakkında bi fikriniz olabilir, olmalıda. Ancak kendinize bir alan seçip o alanda uzmanlaşın. O alanla ilgili her şeyi çok iyi öğrenin.

4. Araştırma Yapmaktan Korkmayın

2 Yorum

C Programlama Dosyalama 4

Fread() ve fwrite() Fonksiyonları

Verileri dosyaya yazma ve dosyadan veri okuma işlemlerinde fwrite() ve fread() fonksiyonlarınıda kullanabiliriz. Daha önce kullandığımız fprintf() ve fscanf() fonksiyonları dosyadan veri okuma ve dosyaya veri yazma işlemlerinde veriler üzerinde değişim yaparak çalıştığından,fread ve fwrite fonksiyonlarını kullanmak daha pratiktir.

Fprintf() fonksiyonunu kullanarak bir dosyaya sayı(int) yazarken, sayının dosyanın ASCII metnine çevrilmesi gerekir.

fprintf(fptr , ”%d” ,  sayi);

yine fscanf() fonksiyonu ile bir dosyadan bir sayı okurken, sayının fscanf() fonksiyonunun dahili format yapısına çevrilmesi gerekir.

fscanf (fptr, “%d”, &sayi);

Şimdi fread ve fwrite fonksiyonlarına geçelim…

Size_t  fread( void *tampon-bellek,

Size_t boyut,

Size_t id1,

FILE *fp);

fp ile gösterilen dosyadan okunan boyut yapısında id1 kadar değeri tampon-bellek ile gösterilen belleğe atar. Burada, boyut  iafadesi okunan verinin byte olarak değerini,id1 ifadesi ise kaç adet veri okunduğunu belirler.  Fread() fonksiyonu okunan veri sayısnını geri verir. Bu değer 0 ise, herhangi bir veri okunmamış demektir. Bu durumda, ya bir hata olmuştur ya da dosya sonu gelmiştir.

size_t fwrite (void *tampon-bellek,

size_t boyut,

size_t id1,

FILE *fp);

Yorum Bırak

C Programlama Dinamik Bellek Yönetimi

Yazılım geliştiricilerin dikkat etmesi gereken konuların başında tabii ki ürettiği yazılımın sistemin kaynaklarını en verimli şekilde kullanmasıdır. Nasıl ki sınırsız kullanıcı talebi olmazsa sınırsız sistem kaynağıda olamaz.

En önemli sistem kaynaklarında biride istemci/sunucu tarafından kullanılan bellektir.

Eğer yazılımcı bellek yönetimini iyi yapmıyorsa doğal olarak daha fazla belleğe ihtiyaç duyar. Daha fazla belleğe ihtiyaç duymakta; fazla maliyete ve programın yavaş çalışması gibi sorunları meydana getirir.

STATİK VE DİNAMİK DİZİ

Statik Dizi

Bir C programını yazarken; dizinin boyutu ve kaç elemanlı olduğunu programın başında belirtilirse, derleyici o dizi için gereken bellek alanını program sonlanıncaya kadar saklı tutar ve bellek alanı başka bir şey için kullanılmaz. Bu tür dizilere statik dizi denir.  Statik dizinin boyutuna programın çalışması esnasında herhangi bir müdahalede bulunamayız.

Dinamik Dizi

Program çalışırken bir dizinin boyutu ve eleman sayısı bazı yöntemler kullanılarak değiştirilebilir. Bu tür dizilere dinamik dizi  denir.

Dinamik diziler için gereken bellek bölgesi,derleyici tarafından işletim sisteminden istenir,kullanılır ve daha sora istenirse bu bölge boşaltılır.

Örneğin;

4 Yorum

C Programlama Dosyalama-3

Fgetc() ve fputc() fonksiyonları

Genel yapıları aşağıdaki gibidir:

İnt fgetch(FILE *fp)

İnt fputc(int id,FILE *fp)

Fputc() fonksiyonu id değişken değeri olan byte’ı fp ile gösterilen dosyaya char olarak yazar. İd değişkeni int bir değer olarak tanımlandığı halde,char bir değer olarak çağırabilirsiniz(ASCII değeri).

Dosya yazma işlemi başarılıysai fputc() fonksiyonu yazılan karakteri değilse EOF(End Of File) değerini verir.

Fgetc() fonksiyonu, bir işaretçi ile belirlenen dosyadaki bir sonraki byte’ı char olarak okur ve int bir değer olarak geri verir.

Yorum Bırak

C Programlama Dosyalama-2

Fprintf() ve fscanf() Fonksiyonları

Fprintf() ve fscanf() fonksiyonları dosyaya veri yazma ve okuma işlemlerinde kullanılan hazır fonksiyonlardır. Bu fonksiyonlar veri üzerinde değişim yaparak çalışırlar.

Fprintf () fonksiyonunu kullanarak dosyaya int türünde bir veri yazdırırken, sayının ASCII metinine çevrilmesi gerekir. Yine fscanf() fonksiyonu ile dosyadan bir sayı okurken, sayının fscanf() fonksiyonun dahili yapısına çevrilmesi gerekir.

Bu iki fonksiyonu kullanarak dosyaya veri yazalım ve dosyadan veri okuyalım. Aşağıdaki örneği inceleyelim;

  • Okuma ve yazma modunda öğrencibilgi.txt isimli bir dosya açalım.
  • Dosyanın içine fprintf() kullanarak.Öğrenci_Adi Numara değerlerini girdirelim.
  • İşimiz bittikden sonra dosyayı fclose ile kapatmayı unutmayalım…

ÖRNEK:

Yorum Bırak