Comparer deux string
Résolu/Fermé
A voir également:
- Python comparer deux string
- Citizen code python avis - Accueil - Outils
- Deux ecran pc - Guide
- Comment faire deux colonnes indépendantes dans word - Guide
- Itinéraire google map entre deux adresses - Guide
- Deux whatsapp sur un téléphone - Guide
3 réponses
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
16 déc. 2010 à 00:56
16 déc. 2010 à 00:56
Bonjour,
La comparaison entre deux chaînes de caractères ne se fait pas avec le double égal (comparaison des adresses mémoires), mais avec la fonction strcmp.
Par exemple : if(strcmp(tabDF[i][j],tabS[k])==0) { /*alors c'est égal*/}
Cdlt,
La comparaison entre deux chaînes de caractères ne se fait pas avec le double égal (comparaison des adresses mémoires), mais avec la fonction strcmp.
Par exemple : if(strcmp(tabDF[i][j],tabS[k])==0) { /*alors c'est égal*/}
Cdlt,
oui mais ça ne marche pas non plus le strcmp, et pour le double égale je ne suis pas sûr que ça compare les adresses parceque ca a marcher dans code que j'ai testé à part
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
16 déc. 2010 à 08:42
16 déc. 2010 à 08:42
oui mais ça ne marche pas non plus le strcmp
C'est que tu l'utilises mal ou qu'il y a une erreur plus haut dans ton code. Car c'est comme ça qu'on compare en C deux chaînes.
Il faudrait voir ton code en entier. Car s'il y a des caractères genre "\n" de stocker dans tes chaînes, c'est normal que ça foire la comparaison. Poste ton code ici.
et pour le double égale je ne suis pas sûr que ça compare les adresses parceque ca a marcher dans code que j'ai testé à part
Montre le code que tu as testé à part. Il suffit que les deux chaînes pointent sur la même adresse pour qu'on ait l'impression que ça compare les caractères. Mais en tout cas, ça compare les adresses mémoires lorsqu'on compare deux chaînes de caractères.
C'est que tu l'utilises mal ou qu'il y a une erreur plus haut dans ton code. Car c'est comme ça qu'on compare en C deux chaînes.
Il faudrait voir ton code en entier. Car s'il y a des caractères genre "\n" de stocker dans tes chaînes, c'est normal que ça foire la comparaison. Poste ton code ici.
et pour le double égale je ne suis pas sûr que ça compare les adresses parceque ca a marcher dans code que j'ai testé à part
Montre le code que tu as testé à part. Il suffit que les deux chaînes pointent sur la même adresse pour qu'on ait l'impression que ça compare les caractères. Mais en tout cas, ça compare les adresses mémoires lorsqu'on compare deux chaînes de caractères.