Arkadaşlar yukardaki komutları açıklarmısınız . Buradaki r+ w+ işlevi nedir neden hem okutup hem yazdırıor r+ w+ yerıne neden w r kullanılmadı.
Merhaba,
Buradaki fopen fonksiyonu icin verilmis aciklamayi ceviriyorum:
"r" okuma: Dosyayi okuma işlemi için açar. Dosya var olmak zorundadır. "w" yazma: Yazma işlemleri için boş bir dosya oluşturur. Eğer aynı isimle bir dosya var ise, o dosyanın içeriği silinir ve boş bir dosyaymış gibi değerlendirilir. "a" ekle: Dosyanın sonuna yazma işlemi yapmak için açar. Yazma işlemleri her zaman dosyanın en sonuna yapılır. Dosyanın içeriğini(veri sırasını) değiştirme işlemleri (fseek, fsetpos, rewind) yok sayılır. Eğer verilen isimde dosya yoksa, yaratılır. "r+" oku/güncelle: Dosyayı güncellemek için açar (hem yazmak hem de okumak için). Verilen isimde dosya olmak zorundadır. "w+" yaz/güncelle: Boş bir dosya yaratır ve hem yazma hem de okuma işlemleri için açar. Eğer aynı isimle bir dosya var ise, o dosyanın içeriği silinir ve boş bir dosyaymış gibi değerlendirilir. "a+" ekle/güncelle: Dosyayı hem yazma hem de okuma işlemleri için açar. Yazma işlemler her zaman dosyanın en sonuna yapılır. Dosyanın içeriğini değiştirme işlemleri (fseek, fsetpos, rewind) bir sonraki dosya okuma işlemi için imlecin pozisyonunu değiştirir ancak yazma işlemleri her zaman imleci dosyanın sonuna götürür. Eğer verilen isimde dosya yoksa, yaratılır.
Verdiğin kodun amacı, verilen isimde dosya yoksa(r+), o dosyayı yarat(w+) ve daha sonra okuma işlemi içi aç(r+).
Ancak yukarıdaki çevirimi okursanız böyle bir kod yazmak yerine kısaca
quote:
dosya=fopen("dosyam.txt","a+");
demek daha mantıklı görünüyor.
yeni mesaja git
Yeni mesajları sizin için sürekli kontrol ediyoruz, bir mesaj yazılırsa otomatik yükleyeceğiz.Bir Daha Gösterme