Scusate, avendo avuto la settimana piena ho cominciato solo ieri.
Intanto ho un errore, ho semplificato e commentato il codice per permettervi di capirlo.
https://pastebin.com/SyzQPsbk
==25338== HEAP SUMMARY:
==25338== in use at exit: 39 bytes in 3 blocks
==25338== total heap usage: 8 allocs, 5 frees, 524,407 bytes allocated
(possibilmente partite dal main)