+ Cevap Yaz
Toplam 2 sayfadan 1. sayfa
1 2 En SonEn Son
19 sonuçtan 1 ile 10 arası gösteriliyor

Konu: Dosyaya yazım konusunda yardım lütfen..

  1. #1
    Üye ipsiz53 Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    03/2009
    Mesaj
    16

    Dosyaya yazım konusunda yardım lütfen..

    Merhabalar..
    Bir program üzerinde çalışıyorm..fonksiyon oluşturarak.mesela günlük kısmı da var içinde.şimdi sorunum şu:

    **txt açıp günlüğe yazdıklarımı kaydetcem.baktım heryere yüzeysel anlatmışlar yada ben anlamadım..örnek kodlarda da hep başlangıçta sormuş satır sayısını.
    do while kullanmış ve gets() fonksiyonu yardımıya kütüğe yazdırabiliyorm.
    i sayısı belirli..while(i<5)
    5 satır girebiliyorm
    benim istediğimde satır sayısı belli olmicak..yazımı da istediğim bir anda sonlandırıcam.while döngüsünden çıkamadım.yada varsa başka bir komut yardımınızı bekliyorum...

    bunu yazdım diyelim..tekrardan okuması var..yine bilmediğim bir sayı while döngüsüne sokarak okutamam..işin içinden çıkamadım

    acaba bu istediğim algoritma mantığıyla yapılamayacak birşeymi.??
    şimdiden teşekkürler...

  2. #2
    Üye a_kutluozen Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    12/2009
    Mesaj
    36

    while() da i, 5 olana kadar yaz demede, i bir başka karakter görene kadar yazdırsın. mesela sen "*" a basınca dursun okuma, i ye * işaretini söyle 100 satır yaz istersen, * basana kadar yazabilirsin. okutmak içinde her, satırın başında numara olsun, o numarayı bulduğu satırı okusun, sanırsam bunu fgets() le fscanf() ile filan yapabilirsin. umarım yardımı dokunur, şu saatte şimdilik aklıma bunlar geliyor arkadaşlarım, zihinlerinin daha ferah olduğu bir saatte konuyu daha detaylı açarlar eminim, hem bende katılırım o zman çünkü böyle şeyler(dosya işlemleri) denemiştim

  3. #3
    Üye ipsiz53 Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    03/2009
    Mesaj
    16

    teşekkürler..denicem bende ama sabah artık..

  4. #4
    Üye ipsiz53 Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    03/2009
    Mesaj
    16

    burada anlamadığım bir nokta var..i bizim satır sayımız olmuyor mu ??? klavyeden bastığım bir karakterle " i " arasında bağlantı kuramadım..az daha açar msın ?

  5. #5
    Üye ipsiz53 Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    03/2009
    Mesaj
    16

    çıkamadım işin içinden..yardım pls

  6. #6
    Ali Çehreli
    Üyelik Tarihi
    10/2002
    Mesaj
    2,872

    feof işlevini araştırabilirsin. Ben stdin akımından okumayı gösteriyorum:

    Kod:
    #include <stdio.h>
    
    int main()
    {
        while (!feof(stdin)) {
            char satir[1000];
            if (fgets(satir, sizeof(satir), stdin)) {
                printf("okudum: %s", satir);
            }
        }
    
        return 0;
    }
    
    O programı konsoldan çalıştırırsan, girişi sonlandırmak için Linux'tan Ctrl-d'ye, Windows'da Ctrl-z'ye basman gerekir.

    Aynısını kendi FILE* dosyaların için de yapabilirsin.

    Yazdırmaya gelince, veriler sana ait olduklarına göre, "verilerin sonuna gelene kadar" yazdırman gerekiyor. Sonunu nasıl belirleyeceğin de kullandığın veri yapısına bağlı.

    Ali

  7. #7
    İptal Durumu
    Üyelik Tarihi
    07/2009
    Mesaj
    168

    while(1) {
    ...


    if( cmpstr("exit",mystr) == 0 ) break; // girdigin satır exit ise donguden cıkar .

    }

    boyle bir şeyde deneyebilirsin. Her ne kadar break kullanmak sakıncalı olsada , sanırım senin için sakıncası olmıyacaktır.

  8. #8
    Üye ipsiz53 Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    03/2009
    Mesaj
    16

    Alıntı kozmotr, mesajından alıntı: Mesajı Gör
    while(1) {
    ...


    if( cmpstr("exit",mystr) == 0 ) break; // girdigin satır exit ise donguden cıkar .

    }
    cmpstr() hangi kütüphanede..hata verdi..biraz daha açarmısınız

  9. #9
    Ali Çehreli
    Üyelik Tarihi
    10/2002
    Mesaj
    2,872

    cmpstr'ı ben de bilmiyorum. Belki kozmotr zaten yazarken yanlış yazmıştır ama onun yerine strcmp'u kullanabilirsin. <string.h> başlığını eklemen gerekir.

    Ali

  10. #10
    Üye ipsiz53 Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    03/2009
    Mesaj
    16

    üzerinde çalıştığım program müsveddesini ekledim.Ara fonksiyonlarını olusturucam.kayıt fonksiyonunu daha yapamadım..Hem program yazma aşamalarım hakkında eleştirilerinizi ve hatalarımı söylemenizi rica ediyorum..saygılarımla
    Eklenmiş Dosyalar

+ Cevap Yaz

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

     

Bookmarks

Mesaj Yazma Hakları

  • Yeni mesajgöndermezsiniz
  • Cevap yazamazsınız
  • Dosya ekleyemezsiniz
  • Mesajınızı düzenleyemezsiniz