Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Trouver le type d'une variable [ Divers / Débutant(e) ] (valoche72)

mercredi 22 août 2007 à 15:08:10 | Trouver le type d'une variable

valoche72

Bonjour, Comment tester le type d'une variable en C ? D'avance, merci pour vos nombreuses reponses

mercredi 22 août 2007 à 15:48:56 | Re : Trouver le type d'une variable

SAKingdom

Membre Club
Le type exacte ? Je ne connais aucun moyen.
Le seul que je connaisse c'est par le poids de la variable (sizeof). Cependant, plusieurs types peuvent avoir le même poids.

Ceci dit, je ne vois aucune utilité à savoir le type de variable que l'on utilise dans un code puisque justement, tu devrais le savoir.

C++ (@++)


mercredi 22 août 2007 à 16:15:25 | Re : Trouver le type d'une variable

darunia

Tout a fait d'accord avec SAKingdom, tester le type d'une variable n'a aucun interet et n'est de toutes façons pas possible (à ma connaissance).

D@runia

mercredi 22 août 2007 à 19:57:19 | Re : Trouver le type d'une variable

vecchio56

Administrateur CodeS-SourceS
En C++ c'est possible (RTTI), mais en C je ne crois pas

_____________________________________
Un éditeur de ressources gratuit pour Windows


mercredi 22 août 2007 à 20:36:47 | Re : Trouver le type d'une variable

BruNews

Administrateur CodeS-SourceS
Bien que possible en C++ ça reste une énorme connerie, c'est résolu à la compilation, alors à quoi cela peut-il bien servir puisque le développeur est tout de même censé savoir ce qu'il code.

ciao...
BruNews, MVP VC++

mercredi 22 août 2007 à 20:40:15 | Re : Trouver le type d'une variable

vecchio56

Administrateur CodeS-SourceS
C'est pas forcément résolu à la compilation:

A* a;

if(...) {
  a = new A();
} else {
  a = new B();
}

Le type de a n'est pas connu

_____________________________________
Un éditeur de ressources gratuit pour Windows


mercredi 22 août 2007 à 20:48:34 | Re : Trouver le type d'une variable

BruNews

Administrateur CodeS-SourceS
On fait des logiciels avec de telles contorsions ?

ciao...
BruNews, MVP VC++

mercredi 22 août 2007 à 23:53:53 | Re : Trouver le type d'une variable

darunia

Ca me fait penser à la fonction SendMessage :

Il arrive qu'un pointeur sur un certain type de variable soit passé en LPARAM, mais la fonction utilise la valeur du HPARAM pour savoir comment elle doit caster le pointeur.

Je ne sais pas ce que tu veux faire, mais tu devrais peut etre proceder de la meme façon.

Il est vrai que c'est jouable en c++, mais je suis d'accord avec BruNews pour dire que c'est du "code bidouille".

D@runia

jeudi 23 août 2007 à 11:53:41 | Re : Trouver le type d'une variable

juju12

Le problème en C++ c'est que le code est obligé de connaître en dynamique le type d'une variable, notamment pour manipuler les appels de fonctions virtuelles via pointeurs : si on déclare un pointeur sur classe mère et qu'on lui attribue l'adresse d'une classe fille (base du polymorphisme), le code a besoin de savoir le type de l'objet pointé pour appeller la bonne fonction.
Cela est également utilisé dans les dynamic_cast et autres du genre...
Cependant je trouve aussi qu'utiliser explicitement la reconnaissance de type dans le code est loin d'être propre...

jeudi 23 août 2007 à 12:38:12 | Re : Trouver le type d'une variable

vecchio56

Administrateur CodeS-SourceS
Malheureusement il existe des cas où on veut effectuer une converison d'une classe dérivée en classe de base, et dans ce cas le dynamic_cast reste la solution a utiliser, à mon avis plus propre que la définition d'une méthode virtuelle getType().

_____________________________________
Un éditeur de ressources gratuit pour Windows



1 2

Cette discussion est classé dans : trouver, variable, type


Répondre à ce message

Sujets en rapport avec ce message

affectation valeur variable type char [ par Vinsou ] J'ai une variable char qui doit contenir du texte. Mais au milieu de ce texte il y a des valeurs provenant d'une base de donnée. Comment faire pour a Variable int sur le disque... [ par nullspace ] Je cherche à enregistrer et lire sur le disque par ofstream et ifstream à partir de variables de type int.Seulement il m'écrit sous format texte.En vb type de variable? long int ? [ par dleewax ] salut! je suis nouveau dans le C++ et j'ai un petit problème... je suis en train de faire un petit programme permettant de calculer les factorielles.. type de donnée inconnu [ par jeffise57 ] dans une fonction developper par une autre personne j'ai un type char** trucmuche, cette variable est un buffer qui doit recevoir le résultat qu'est c Conversion de CString vers Int [ par DARKSIDIOUS ] Bonjour à tous,J'ai un problème qui me turlupine depuis quelques heures : comment fait-on pour convertir des données d'une variables de type CString v conversion de type!! [ par bub97 ] je veux mettre une variable unsigned char dans une variable de type string mais voila que ceci me donne des caracteres plutot bizarre. AIDEZ MOI!!!PS: arrondir une variable type double [ par cncfanatics ] bonjour , comment on peux arrondir une variable de type double pour suprimer tous les chifres apres la virgule ?? (l'arrondissement doit etre vers le Pb avec variable char [ par enrageur ] voila j'utilise des variables de type char. je l'initialise de la maniere suivante :char tab[256];Mon probleme est que j'aimerais initialiser le table Type de variable inconnu [ par LordBob ] Bonjour a tous,voila je regarder un code est je suis tomber sur un type de variable que je ne connaissais pas, j'espère que vous pourrez m'aider !!!HI tester le type d'une variable.... [ par king_kunu ] bonjour...je debute en C/C++je demande a l'utiilisateur de saisir un entier via scanff et j'aimerais etre sur k'il saississe bien un entier...existe t


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,499 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.