J'ai codé
et quand word = 0x071DE16C "either" le test est false???
Code : Sélectionner tout - Visualiser dans une fenêtre à part if( word == "either")
celui qui m'aidera sera![]()
J'ai codé
et quand word = 0x071DE16C "either" le test est false???
Code : Sélectionner tout - Visualiser dans une fenêtre à part if( word == "either")
celui qui m'aidera sera![]()
Quel est le type de word?
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
C'est un char*
Sur des char*, "==" compare les adresses, pas le contenu de la chaine.
Vous avez 2 fois la même chaine à 2 adresses mémoires différentes, c'est tout.
Des chaînes de caractère de type char* se comparent avec strcmp(). (ou s'il est possible que l'une ou l'autre chaîne soit un pointeur nul, écrire un wrapper qui vérifie ça d'abord, car la norme C que j'ai sous la main ne spécifie pas le comportement dans ces cas-là).
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
J'ai codé :
et toujours avec les mêmes valeurs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 bool b0 = strcmp( word, "either"); if( b0)
le test retourne false
Partager