#include <iostream>
using namespace std;
int main() {
int a = 257;
int* p = &a;
char* q = reinterpret_cast<char*>(p);
short* x = reinterpret_cast<short*>(p);
std::cout << std::hex << (int)(*q) << std::endl;
std::cout << std::hex << (int)(*(q+1)) << std::endl;
std::cout << std::hex << (int)(*(q+2)) << std::endl;
std::cout << std::hex << (int)(*(q+3)) << std::endl;
std::cout << std::hex << static_cast<void*>(q) << std::endl;
std::cout << std::hex << static_cast<void*>(q+1) << std::endl;
std::cout << std::hex << (int)(*(x)) << std::endl;
std::cout << std::hex << (int)(*(x+1)) << std::endl;
std::cout << std::hex << x << std::endl;
std::cout << std::hex << x + 1 << std::endl;
return 0;
}