IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

pointeur => entrer directement une adresse mémoire...


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 411
    Par défaut pointeur => entrer directement une adresse mémoire...
    bonjour,
    comment peut on faire pour affecter a un pointeur une adresse mémoire directement.

    exemple : char *pointeur;
    char variable;

    je sais que l'on peut faire ceci : pointeur=&variable; mais cela ne m'intéresse pas, j'aimerais mettre directement une adresse mémoire dans pointeur;

    j'ai essayé avec : pointeur=0x4e35ab ou encore pointeur=4e35ab mais ca ne fonctionne pas.

    merci d'avance

  2. #2
    Rédacteur

    Avatar de gege2061
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2004
    Messages
    5 840
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2004
    Messages : 5 840
    Par défaut Re: pointeur => entrer directement une adresse mémoire...
    Bonjour,
    Citation Envoyé par youp_db
    j'ai essayé avec : pointeur=0x4e35ab ou encore pointeur=4e35ab mais ca ne fonctionne pas.
    Pourquoi ça ne marche pas? C'est pourtant la méthode à utiliser. Cependant si tu fais comme cela tu doit être sûr de se que tu fait car normalement il y a qu'un nombre restreint d'adresse valides :
    • L'adresse d'une variable existante
    • Le retour de malloc (et ses cousines)
    • NULL (ou 0)

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 411
    Par défaut
    ca me met l'erreur suivante :

    invalid conversion from int to char*

  4. #4
    Rédacteur

    Avatar de gege2061
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2004
    Messages
    5 840
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2004
    Messages : 5 840
    Par défaut
    Citation Envoyé par youp_db
    ca me met l'erreur suivante :

    invalid conversion from int to char*
    Dans ce cas, il suffit de lui demander gentillement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    char *pointeur = (char *)0x4e35ab;
    devrait passer

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 411
    Par défaut
    merci bien ca marche !!

  6. #6
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut Re: pointeur => entrer directement une adresse mémoire...
    Citation Envoyé par youp_db
    comment peut on faire pour affecter a un pointeur une adresse mémoire directement.
    Le langage C tout seul ne sait pas le faire. Il existe des extensions, mais ça dépend du système.

    Si tu es avec un système avec MMU, tu n'as jamais accès à la mémoire physique au niveau utilisateur. Il faut être en mode système (superviseur, super user, kernel...) et là, des fonctions systèmes spécifiques permettent ça (driver, module, service...).

    Que veux-tu faire exactement ?

  7. #7
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut Re: pointeur => entrer directement une adresse mémoire...
    Citation Envoyé par gege2061
    Citation Envoyé par youp_db
    j'ai essayé avec : pointeur=0x4e35ab <...> mais ca ne fonctionne pas.
    C'est pourtant la méthode à utiliser.
    C'est extension courante, mais elle n'est pas spécifiée par le langageC. Ne fonctionne pas avec MMU.
    Cependant si tu fais comme cela tu doit être sûr de se que tu fait car normalement il y a qu'un nombre restreint d'adresse valides :
    • L'adresse d'une variable existante
    • Le retour de malloc (et ses cousines)
    • NULL (ou 0)
    Absolument (et aussi le retour de fopen())

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lire la valeur d'une adresse mémoire
    Par barhili04 dans le forum x86 32-bits / 64-bits
    Réponses: 2
    Dernier message: 11/11/2009, 10h44
  2. Comment modifier la valeur d'une adresse mémoire ?
    Par copterkill dans le forum Windows
    Réponses: 6
    Dernier message: 08/02/2009, 22h18
  3. Réponses: 5
    Dernier message: 27/05/2008, 06h06
  4. lire le contenu d'une adresse mémoire avec VB Script
    Par pierre.zelb dans le forum VBScript
    Réponses: 2
    Dernier message: 13/12/2006, 13h32
  5. lire la valeur d'une adresse mémoire
    Par ilimo dans le forum Windows
    Réponses: 17
    Dernier message: 11/04/2006, 15h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo