Necesitas una variable de tipo puntero en la que poner la direccion de memoria. Y luego acceder al contenido de dicho puntero con el operador asteristo, o con el operador flecha.
El tipo de puntero depende del tipo de información que haya que recuperar.
Por ejemplo si solo quieres leer un byte de memoria de tipo "unsigned char", el código sería:
Código:
unsigned char * puntero = 1978; /* Las direcciones de memoria normalmente se expresan en hexadecimal. Ej: 0x14ea */
printf( "Valor = %d\n", *puntero );
unsigned char valor = *puntero;
printf( "Valor = %d\n", valor );
Otro ejemplo, si lo que quieres recuperar de memoria es una estructura:
Código:
typedef struct
{
int a
long b
} tipoAB;
tipoAB * puntero = 1978;
printf( "ValorA = %d, ValorB=%ld\n", puntero->a, puntero->b );