reinterpret_cast is for casting pointer to pointer