Déterminer le type d'une variable [Résolu]

Messages postés
12
Date d'inscription
mardi 8 juillet 2003
Statut
Membre
Dernière intervention
22 mars 2009
- - Dernière réponse : vecchio56
Messages postés
6539
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
- 7 déc. 2008 à 16:19
Bonjour bonjour ^^
J'ai un petit problème sur un projet perso, je cherche comme le titre le dit à déterminer le type d'une variable.
Donc ma grande question est: existe t'il une fonction qui permet de le faire ?

Merci d'avance
Afficher la suite 

7 réponses

Meilleure réponse
Messages postés
6539
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
3
Merci
Je vois que tu définis deux fois la même structure avec des nom différents, ça n'a aucun sens. Éventuellement, tu peux faire ceci :
struct maillon1{
   int type;
   void* ptr;
}

type contient le type de ton pointeur, c'est l'information dont tu avais besoin.
_____________________________________
Un éditeur de ressources gratuit pour Windows

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 189 internautes nous ont dit merci ce mois-ci

Commenter la réponse de vecchio56
Messages postés
6539
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
0
Merci
Tu veux dire la classe? Car a priori le type de la variable tu le connais, c'est celui que tu as utilisé pour déclarer la variable.
Ceci pourrait t'aider : Run-time type information

_____________________________________
Un éditeur de ressources gratuit pour Windows
Commenter la réponse de vecchio56
Messages postés
12
Date d'inscription
mardi 8 juillet 2003
Statut
Membre
Dernière intervention
22 mars 2009
0
Merci
Nan nan je suis en C basique pas de C++

exemple:
  int ma_variable;
  fonction(ma_variable);

je voudrias que la fonction puisse detecter le type en gros qu'elle me dise si c'est un char ou un int ou autre
Commenter la réponse de higink
Messages postés
6539
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
0
Merci
Dans la définition de ta fonction, tu dois spécifier le type de l'argument donc je ne vois pas ou est ton problème...

_____________________________________
Un éditeur de ressources gratuit pour Windows
Commenter la réponse de vecchio56
Messages postés
12
Date d'inscription
mardi 8 juillet 2003
Statut
Membre
Dernière intervention
22 mars 2009
0
Merci
Exemple concret:

j'ai créé une variable mais je ne connais pas son type
je ne sais pas si ca definition est:

int ma_variable;
ou
char ma_variable;
ou
float ma_variable;

comment avoir de quel type elle est ?
Commenter la réponse de higink
Messages postés
6539
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
0
Merci
Mais comment peux-tu ne pas connaitre son type? D'après moi tu le connais forcément, sauf si tu me donne un exemple qui montre le contraire

_____________________________________
Un éditeur de ressources gratuit pour Windows
Commenter la réponse de vecchio56
Messages postés
12
Date d'inscription
mardi 8 juillet 2003
Statut
Membre
Dernière intervention
22 mars 2009
0
Merci
ok disons que tu as une liste chainée
tu a la fonction "ajouter" qui ajoute un maillon a la fin de ta liste
la syntaxe est ajouter(liste* nom_de_la_liste,int type);
type est le type du maillon que tu veux ajouter

ajouter(liste1, 0);
ajoute un maillon de ce type au bout de la liste1
struct maillon1{
   int* donnee;
}

ajouter(liste1, 1);

ajoute un maillon de ce type au bout de la liste1

struct maillon1{

   char* donnee;

}

l'utilisateur peut ajouter autant de maillon qu'il veut
puis apres on veut parcourir la liste et dire de quel type sont chaques maillons

comment savoir si le dernier maillon que tu a ajouté est un int ou un char ?
Commenter la réponse de higink