

Entrar na 42 Rio é um evento curioso, pois depois da Piscina você chega confiante, acreditando em duas coisas:
– que entende algo de C– que “malloc” não é lá um bicho de 7 cabeças
É mais ou menos nesse estado de espírito que você se encontra com a get_next_line...
No início, tudo parece simples.
Uma função elegante, um conceito bonito: ler uma linha por vez de um arquivo.
Você escreve o código… printa uma linha. Depois duas. Depois até mesmo o arquivo inteiro!
Nesse momento, a mente já dispara: “Pronto. Projeto resolvido.”
Então você roda o valgrind e ele, educadamente, responde:
“Temos coisas para conversar.”

Leaks de memória surgem de todos os lados. Um malloc sem free aqui, outro ali… E fica claro que o buraco é bem mais embaixo.
A verdadeira jornada da GNL
É nesse ponto que começa a verdadeira jornada da get_next_line.
Você aprende que ponteiros não são apenas variáveis — são enigmas. Que cada alocação precisa de responsabilidade. Que resolver um leak pode gerar outros dois. E que, quando tudo parece resolvido, a Norma da 42 aparece dizendo:
Lá vai você refatorar.
Quebrar funções, criar auxiliares, renomear variáveis, apagar código que funcionava, mas não deveria existir daquele jeito.
Dói, mas ensina.
No fim, nada pareceu simples
Até que um dia…
Compila.
Testes passam.
Valgrind limpo.
Norma ok.
E você percebe que a get_next_line não foi só sobre ler arquivos. Foi, também, sobre aprender a pensar melhor, escrever código mais consciente e entender que “funcionar” não é o suficiente.
No fim, fica o cansaço — e o orgulho, é claro.
Porque como primeiro grande desafio na 42, a get_next_line entrega exatamente o que promete: um verdadeiro bem-vindo à realidade da 42 Rio e do desenvolvimento em C.
E aí, o que achou do assunto? Me manda uma DM lá no Instagram e me conta qual é a sua opinião :)




