  Ŀ
  Ŀ
                                                                          
                    Dosya ve Alt Rehberlerin Says                       
                                                                          
  ٳ
   C ve Sistem Programclar Dernei           Deniz mit Kabuli           
  



 Verillen bir path'deki tm dosya ve alt dizinleri aratrarak, o path'e ait
  toplam dizin ve dosya saysn verir.


  Recursive Yap

  FTREE.C kaynak kodu incelendiinde grlecektir ki; burada kendi kendini
  aran (recursive) fonksiyon (ftree()) kullanlmtr. Bundan ama
  algoritmay mmkn olduunca basitletirmek ve kaynak kodu ksa
  tutabilmektir.

  Recursive fonksiyonlarda bellein etkin kullanm ok nemlidir. rnein,
  eer ftree() fonksiyonunda free() fonksiyonu ile bellek boaltlmaz ise,
  srekli i ie armalardan kaynaklanan bellek yetersizlii ile
  karlalabilirdi!..

> ftree() fonksiyonunda _path[128] ve _fname[128] deikenlerinin static
  tipinde bildirilmesi gerekten nemlidir. nk fonksiyon kendisini yeniden
  ardnda bir nce kullanlm olan yol(path) revize edilerek yeniden
  kullanlacaktr.

> finfirst(cpath,f_inf,FA_ARCH|FA_HIDDEN|FA_SYSTEM|FA_RDONLY|FA_DIREC);

  ifadesinin kullanlmasnn nedeni, bir dizinin ayn zamanda; ariv, gizli,
  sistem, yalnz okunur gibi zellikleri de tayabilmesidir. Bulunan dosyann
  zellik no FA_DIREC makrosu ile VE'lenerek(&) dizin zellii gsteren tm
  dosyalar saptanmtr. Algoritmay kurarken dikkat edeceimiz bir nokta da
  '.' veya '..' adlarn tayan zel dizinlere girmekten kanmaktr.

> C gibi yapsal dillerde goto kullanmak genellikle tavsiye edilmez ise de,
  kulamz uzun yoldan gstermek yerine, yapsallktan fedakrlk etmek
  dnlebilir. Nitekim bu ksa programda iki goto birden kullanlmtr.


  Son Sz

  Bu tr bir program SCAN.EXE programnn yapt virs tarama gibi
  ilemlerde kullanabiliriz. Eh artk virs bulmas da sizden...

  Anlamadnz birey olursa Derneimizi araynz. Biz Dernekteyiz...

                C ve Sistem Programclar Dernei
                Tel: 0(212) 288 36 31 - 288 35 20