Giter Club home page Giter Club logo

42-libft's Introduction

Libft-42sp

Minha caixa de ferramentas C personalizada!

Imagine criar sua própria caixa de ferramentas repleta de funções C poderosas. Bem-vindo à "libft" da 42 São Paulo! Essa biblioteca é meu conjunto de funções C, uma mão na roda para construir outros programas C com facilidade e eficiência, especialmente no desenvolvimento dos projetos da 42.

Por que isso é especial?

Esta biblioteca não é apenas um amontoado de funções. Aqui está o que a torna incrível:

  • Reimplementação das clássicas: Imagine reescrever suas funções favoritas da biblioteca padrão C, como strlen e memcpy, mas com o prefixo ft_ para evitar confusões e conflitos.

  • Minhas criações personalizadas: Além das conhecidas, criei funções únicas, não presentes na biblioteca padrão, mas super úteis para tarefas comuns, como malabarismos com strings e listas.

O que aprendi?

Ao construir esta biblioteca, mergulhei fundo em:

  • Segredos das funções C: Escrever minhas próprias funções me deu uma visão mais profunda sobre como a memória é gerenciada e como as funções se comunicam.

  • Código limpo e eficiente: Segui diretrizes rigorosas para garantir que minha biblioteca seja organizada, legível e, claro, livre de bugs.

  • Domando a biblioteca C: Trabalhar com funções existentes e personalizadas me deixou mais confortável com a biblioteca C e todas as suas maravilhas.

Novos horizontes:

Além disso, essa jornada me ensinou sobre:

  • Alocação de memória: Entendi as nuances entre alocação estática e dinâmica, e como malloc e free ajudam a manter a ordem.

  • Vazamento de memória: Como disse certa vez a raposa ao pequeno príncipe: tu te tornas eternamente responsável por devolver ao sistema a memória que pegas emprestada.

  • Compilação de código: A mágica que transforma nosso código em algo que o computador consegue entender.

  • Makefile: A chave para automatizar o processo de compilação e tornar a vida de um desenvolvedor mais tranquila.

  • Proteção das funções: A importância de verificar os argumentos de entrada para evitar erros e vazamentos de memória.

Aprofundando-se:

Um dos maiores aprendizados da Libft é sobre a alocação de memória:

Estática vs. Dinâmica: Esses dois tipos são cruciais. A estática acontece na compilação, enquanto a dinâmica, bem, é mais flexível e ocorre durante a execução.

Evitando vazamentos: Ah, o pesadelo dos programadores! free() é a palavra mágica para evitar isso.

Compilação desvendada: O processo misterioso de transformar código em algo que os computadores adoram.

Makefile, o aliado do programador: Automatizar a compilação nunca foi tão fácil.

Protegendo minhas funções: Garantir que elas não recebam inputs errados é uma tarefa vital.

Conclusão:

O projeto Libft foi uma jornada de descobertas, mergulhos profundos em conceitos essenciais da programação C. Essa bagagem será minha âncora para construir projetos mais robustos e eficientes no futuro. A aventura continua!

42-libft's People

Contributors

seijiueno 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.