Addressage memoire en c

wqazerty -  
kilian Messages postés 8732 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,
je voudrais une valeur de mon choix a une adresse memoire de mon choix en c.
Comment faire;
Merci

PS : je suis conscient des consequences.

2 réponses

kilian Messages postés 8732 Date d'inscription   Statut Modérateur Dernière intervention   1 526
 
Salut,

Ben mettons que tu veuilles mettre la valeur 5 dans l'adresse 0xFF612332:
int *ptr = (int *) 0xFF612332;
*ptr = 5;


Bien évidemment, selon l'adresse que tu choisis, il y a 9 chances sur 10 que ton système d'exploitation t'envoie balader ;-)
0
wqazerty
 
sa marche pas. sa dit INCIDENT DE SEGMENTATION.

Que faire?
0
kilian Messages postés 8732 Date d'inscription   Statut Modérateur Dernière intervention   1 526
 
Ben oui forcément ton système d'exploitation t'envoie balader. Une zone de mémoire prise au hasard a de très fortes chances de ne pas t'être allouée.

Je parie que tu croyais pouvoir adresser une zone de ta RAM directement, c'est bien ça?
En ce cas il faut que tu comprennes ce qu'est la mémoire virtuelle: https://fr.wikipedia.org/wiki/M%C3%A9moire_virtuelle
0