https://levelup.gitconnected.com/project-practice-applying-theory-to-practical-use-of-c-ptr-in-programming-74fae9ba3544