https://www.somethingsblog.com/2024/10/20/mastering-fgetc-unlocking-efficient-file-stream-reading/