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 :

indicateur de format pour void*


Sujet :

C

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 17
    Par défaut indicateur de format pour void*
    Bonjour,

    Pourriez vous me dire s'il existe un indicateur de format pour le type void* comme %d en est un pour le type int ? (Cette intérogation vient du fait que j'ai un type abstrait de données "matrice" que je souhaiterais rendre générique)

    Merci

  2. #2
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    void *ptr;
     
    /* ... */
     
    printf("%p\n", ptr);
     
    /* ... */
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 17
    Par défaut
    merci vicenzo pour ta reponse, en fait ma question est un peu nigaude, avant de la soumettre j'aurais du me remettre à l'esprit qu'il n'existe que le type pointeur vers void et pas le type void, la réponse est donc évidente. Mon vrai problème est de trouver une solution pour rendre générique mon type abstrait de données. Avec le preprocesseur on peut faire en sorte de choisir quel type l'on désire utiliser a la compilation, en revanche comment résoudre le problème de l'impression de données dans un printf par exemple, car on doit spécifier un format...

  4. #4
    Membre Expert Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Par défaut
    Généralement, un type abstrait de donnée est implémenté par un structure, tu ne souhaites quand même pas afficher une structure avec un printf() ? Si c'est simplement pour afficher son adresse, dans ce cas vicenzo ta donné la bonne façon de faire : la règle est simple, le spécificateur %p attend un pointeur générique, donc si ton pointeur est typé, tu le castes en (void*).

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 17
    Par défaut
    Généralement, sauf pour les cas particuliers, qui est le mien. je dois réaliser ceci sans structure, uniquement avec une utilisation du preprocesseur...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    #define TYPE int /*ou double etc... avant de compiler*/
     
     /* l'objet du TAD */ 
    typedef TYPE matrixS[MAX][MAX];
    ...et constater que l'impression des coefficients de la matrice est impossible. c'était le but d'un exercice.

    Merci pour vos reponses.

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

Discussions similaires

  1. Creer un format pour chaque indicateur
    Par m.brahim dans le forum SAS Base
    Réponses: 1
    Dernier message: 16/11/2011, 13h10
  2. Pb de format pour une zone de texte
    Par Vincent623 dans le forum Access
    Réponses: 2
    Dernier message: 24/09/2005, 12h47
  3. Quel format pour stocker un n° de téléphone international ?
    Par Najdar dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 13/05/2005, 10h18
  4. Réponses: 2
    Dernier message: 29/04/2005, 09h32

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