Code Monkey home page Code Monkey logo

libft's Introduction

A Simple Libft

This project helped you? Give it a ๐ŸŒŸ!

๐Ÿงฐ General information

Version: 15. Bonus included.
I did my best to create a codebase that is as clean and efficient as possible, while also maximizing the reuse of basic functions in more complex ones.

โš™๏ธ Implementation details

In libft_docs.md some personal notes that delve into specific aspects of my implementation and detailed theoretical explanations. Special mention for an argument about why atoi should not handle overflow.
Most of the explanations were generated by GPT-4, with edits by me.

๐Ÿš€ Extended version

This repo is an extended version my libft.
The original project is stored in the .tar archive.

Change log:

  • Makefile create obj/ directory.
  • Functions classified in directories.
  • Header in a new include/ directory.
  • Implementation of ft_strcmp.
  • Implementation of ft_write_fd (as ft_putstr_fd, but return the write syscall return).
  • Now, linked lists are doubly linked. Nodes have a 'prev' pointer in addition to 'next'.
  • Modification of ft_lstclear and ft_lstdelone to accept a NULL pointer as delete function. Useful to delete the structure list without it's content. Use with caution, if the content of the list has not been kept somewhere, it may lead to leaks!
  • ft_lstclear set the lst pointer to NULL to avoid dangling pointer.

๐Ÿ“‹ Testing

Tested by moulinette (125%) and the following tester, in their strictest version.

libft's People

Contributors

ulyssegerkens avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.