https://medium.com/@archiepayne74/mastering-pointers-in-c-navigating-the-smart-vs-raw-debate-for-optimal-code-craftsmanship-e58bfbc2ad07