Lire et écrire dans un emplacement de mémoire

Après avoir fait beaucoup de recherches dans Google, j'ai trouvé ci-dessous le programme de

#include <stdio.h>

int main()
{
    int val;
    char *a = (char*) 0x1000;
    *a = 20;
    val = *a;
    printf("%d", val);
}

Mais il est en train de jeter un run time de l'erreur,*a = 20.

Alors comment puis-je écrire et lire un emplacement mémoire spécifique?

S'il vous plaît aider moi

Êtes-vous sûr que vous pouvez écrire à 0x1000? Quelle plate-forme est-ce?
Les blocs de Code dans windows

OriginalL'auteur Rasmi Ranjan Nayak | 2012-06-26