Есть ли способ преобразовать адрес в памяти, представленный void* (например 0xbff2c680), в целое число?
Не в этом смысле:
void f(void* p)
{
int x = *((int*)p);
}
а именно получить в переменной x значение адреса памяти, хранящегося в переменной p — то есть 0xbff2c680. То есть после выполнения этой операции в x было бы значение 0xbff2c680.
Если такой способ существует, то как осуществить обратную операцию — целочисленное значение преобразовать в адресс памяти, который можно разыменовывать и т.д.?