BoraOmerBoluk / 42_Get_Next_Line

Bu proje, bir dosyadaki satırları okumak için basit ve etkili bir fonksiyon olan get_next_line'ı içerir. Bu fonksiyon, verilen bir dosya tanıtıcısından okuma yapar ve her çağrıldığında dosyadaki bir sonraki satırı döndürür.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

42_Get_Next_Line

Get_Next_Line, C programlama dilinde dosya işlemleri için geliştirilmiş bir proje olup, bir dosya tanıtıcısından satırları okuyan ve her çağrıldığında bir sonraki satırı döndüren bir işlevi içerir. Bu projenin temel amacı, dosyalardan satır okuma işlemini hızlı, etkili ve hatasız bir şekilde gerçekleştirmek ve programcılara kullanımı kolay bir araç sağlamaktır. Get_Next_Line, bellek sızıntısı olmadan çalışır ve minimum kaynak kullanımıyla dosyalardan okuma yapabilir. Bu sayede, dosya işleme işlevselliğini genişletmek isteyen geliştiricilere büyük bir kolaylık sağlar. Projeyi kullanmak için sadece ilgili dosya tanıtıcısını belirtmek ve get_next_line işlevini çağırmak yeterlidir.

Nasıl Kullanılır

  1. Projeyi klonlayın:

    git clone https://github.com/BoraOmerBoluk/42_Get_Next_Line.git
  2. get_next_line işlevini kullanmak istediğiniz C programınıza ekleyin:

    #include "get_next_line.h"
  3. get_next_line işlevini çağırarak dosyadaki satırları çalıştırın:

    int   main(void)
    {
    int   fd;
    char  *line;
    
    fd = open("dosya.txt", O_RDONLY);
    while ((line = get_next_line(fd)) != NULL)
    {
    // Okunan satırı kullanın
    printf("%s\n", line);
    free(line);
    }
    close(fd);
    return (0);
    }

    Not: Daha fazla çalıştırma örneği klasör içindedir.

4. Proje Özellikleri

  • Dosyalardan satır okumak için kullanışlı bir işlev sağlar.
  • Çok dosyalı okumayı destekler. Birden çok dosyadan okuma yapabilirsiniz.
  • Bellek sızıntısı olmadan ve minimum kaynak kullanımıyla çalışır.
  • Tampon boyutunu ayarlamak için derleme sırasında tanımlanabilir ('BUFFER_SIZE').
  • Fonksiyon İmzası
    char	*get_next_line(int fd);
  • fd: Okunacak dosyanın dosya tanıtıcısı.

5. Geri Dönüş Değeri

  • İşlem başarılıysa, dosyadan okunan bir satırın heap üzerindeki adresini döndürür.
  • Dosya sonuna ulaşıldığında NULL döndürür.
  • Bir hata oluşursa veya dosya okunamazsa -1 döndürür.

6. İşlevin Çalışma Mantığı

  1. Get_next_line işlevi çağırıldığında, belirtilen dosyadan bir tampon boyutu (varsayılan olarak 32 KB) kadar veri okur.
  2. Okunan veri içindeki satırları (satır sonu karakteri '\n' ile ayrılan) ayırır.
  3. Eğer tamponun sonuna gelinmediyse, okuma işlemine devam eder.
  4. Her çağrıda bir sonraki satırı döndürür.
  5. İşlem tamamlandığında dosya kapandığında veya bir hata oluştuğunda NULL veya -1 döndürür.

Kaynaklar

Bu proje, 42 School tarafından verilen görevlerden biridir. Proje ile ilgili daha fazla bilgi ve detaylı açıklamalar için klasör içindeki en.subject.pdf dosyasını inceleyebilirsiniz.

About

Bu proje, bir dosyadaki satırları okumak için basit ve etkili bir fonksiyon olan get_next_line'ı içerir. Bu fonksiyon, verilen bir dosya tanıtıcısından okuma yapar ve her çağrıldığında dosyadaki bir sonraki satırı döndürür.


Languages

Language:C 100.0%