/Get_Next_Line_42

This project is about programming a function that returns a line read from a file descriptor

Primary LanguageCGNU General Public License v2.0GPL-2.0

Project Overview: Get_Next_Line_42

This project involves the development of a function designed to retrieve a line from a file descriptor.

For a comprehensive guide on the concept, I recommend consulting @Raspurrin's 42Guides, which provides valuable insights.

Implementation Approach

I adopted a unique implementation approach using an Intrusive Linked List. While this methodology is not obligatory, it proved instrumental in expanding my understanding of linked list implementations. The decision was not driven by showcasing prowess but rather stemmed from overcoming challenges faced in a prior implementation, where timeouts were prevalent.

Visual Representation of the Concept

Concept Visual

Intrusive Linked List

Intrusive Linked List

Advantages of Array Approach

Array Approach Advantages

For a more detailed understanding, refer to Data Structure the lord.

Performance Considerations

I propose that this implementation is potentially faster, although a benchmark test is warranted. I invite anyone knowledgeable in this area to conduct such tests and share the findings.

Resources and Tools Used

  • Debugging: Utilized tools such as lldb or gdb. A valuable resource for debugging techniques can be found at Debug Me !!.

  • Memory Allocation Intuition: Continued learning and reference from Stack Overflow.

  • Static Variables and Memory Allocation: Acknowledged the potential pitfalls of allocating large memory in the stack with static variables, especially in the context of avoiding timeouts.

Finally, a crucial aspect of my learning process involved deriving insights from evaluations. Continuous improvement is paramount in refining programming skills.