You can't reinterpret_cast in the case you give because reinterpret_cast takes only either a int to convert to a pointer, or the reverse, and follows additional similar rules.
There is a summary of these rules there: http://en.cppreference.com/w/cpp/language/reinterpret_cast