Accueil > Forum > > > > Comparaison avec StrCmp()
Comparaison avec StrCmp()
mercredi 11 juin 2003 à 15:08:36 |
Comparaison avec StrCmp()

lcampeur
|
Bonjour, je souhaite effectuer une comparaison, j'ai un programme contenant une structure borne contenant: 1- char NomBorne [20] 2- char IP[16] Mon programme doit réferencé un certain nombre de borne relié en réseau. G une fenetre Gestion sur laquele est présente 2 ListBox (1 Nom & 1 IP) et plusieurs bouton dont Ajouter. Lorsque j'ajoute une borne, je dois lui rentré son Nom et son IP, puis clické sur validé, qui met les donné en Ram avant de cliké sur Quitter pour enregistrer les donné sur le dur (fstream). Lors du click sur Valider, je doit vérifié que l'adresse IP n'est pas déjà utilisé. Pour cela, j'ai fait : //Valider CString tempIP ; char * reTempIP ; int pareil = 1; bool ident ; reTempIP = new char [20] ; GetDlgItemText(EdtIP, tempIP) //copie le texte de la zone de text dans la variable for(int y =0; y <= NbBornes; y++){ //NbBorne = Nombre bornes référencées strcpy(reTempIP, objBornes[y].IP) ; pareil = strcmp (reTempIP, tempIP) ; if(pareil == 0) ident = false ; } //vérifie si l'@ IP existe déjà, si oui, ident = false G une erreur là dedans. Qd je click sur valider (de ajout) si il n'y a pas encore de borne référencé, cela fonctionne, si j'ai déjà référencé des bornes, le prgm plante (et veux envoyer un message à microsoft...) Please, HELP !!! lcampeur
|
|
mercredi 11 juin 2003 à 15:42:00 |
Re : Comparaison avec StrCmp()

highcobra
|
Pkoi faire tout ça : pareil = strcmp (reTempIP, tempIP) ; if(pareil == 0) ident = false ;
plutot que ça : ident = strcmp (reTempIP, tempIP) ;
et pkoi ne pas faire une boucle while pour tester tes ip et sortir de la boucle des que tu trouves une ip qui correspond ??? Ca serait mieux que le for non ???
High_Cobra ;)
------------------------------- Réponse au message : -------------------------------
> Bonjour, je souhaite effectuer une comparaison, j'ai un programme contenant une structure borne contenant: > 1- char NomBorne [20] > 2- char IP[16] > Mon programme doit réferencé un certain nombre de borne relié en réseau. G une fenetre Gestion sur laquele est présente 2 ListBox (1 Nom & 1 IP) et plusieurs bouton dont Ajouter. > Lorsque j'ajoute une borne, je dois lui rentré son Nom et son IP, puis clické sur validé, qui met les donné en Ram avant de cliké sur Quitter pour enregistrer les donné sur le dur (fstream). Lors du click sur Valider, je doit vérifié que l'adresse IP n'est pas déjà utilisé. Pour cela, j'ai fait : > > //Valider > CString tempIP ; > char * reTempIP ; > int pareil = 1; > bool ident ; > > reTempIP = new char [20] ; > GetDlgItemText(EdtIP, tempIP) > //copie le texte de la zone de text dans la variable > for(int y =0; y <= NbBornes; y++){ > //NbBorne = Nombre bornes référencées > strcpy(reTempIP, objBornes[y].IP) ; > pareil = strcmp (reTempIP, tempIP) ; > if(pareil == 0) ident = false ; > } //vérifie si l'@ IP existe déjà, si oui, ident = false > > G une erreur là dedans. Qd je click sur valider (de ajout) si il n'y a pas encore de borne référencé, cela fonctionne, si j'ai déjà référencé des bornes, le prgm plante (et veux envoyer un message à microsoft...) > Please, HELP !!! > lcampeur
|
|
mercredi 11 juin 2003 à 16:58:08 |
Re : Comparaison avec StrCmp()

lcampeur
|
En fait, je ne veux pas de 'while' pour une raison simple, c'est que le but c'est justement de ne pas avoir d'@ IP identique, cette boucle ne sert que de vérif et si je clak un while, bin... Ensuite, ident est un 'bool' et la fonction strcmp retourne un 'int', voilà pkoi je passe par le 'si'. Sinon, j'ai changé un peu, et supprimé la variable reTempIP : j'ai fait tout de suite la comparaison : strCmp(objBornes[y].IP, tempIP) ; Cela ne compare toujours pas comme je le veux. Dans le débogage, je met 2 IP identiques et le prgm ne les repere pas !
------------------------------- Réponse au message : -------------------------------
> Pkoi faire tout ça : > pareil = strcmp (reTempIP, tempIP) ; > if(pareil == 0) ident = false ; > > plutot que ça : > ident = strcmp (reTempIP, tempIP) ; > > et pkoi ne pas faire une boucle while pour tester tes ip et sortir de la boucle des que tu trouves une ip qui correspond ??? Ca serait mieux que le for non ??? > > High_Cobra ;) > > > ------------------------------- > Réponse au message : > ------------------------------- > > > Bonjour, je souhaite effectuer une comparaison, j'ai un programme contenant une structure borne contenant: > > 1- char NomBorne [20] > > 2- char IP[16] > > Mon programme doit réferencé un certain nombre de borne relié en réseau. G une fenetre Gestion sur laquele est présente 2 ListBox (1 Nom & 1 IP) et plusieurs bouton dont Ajouter. > > Lorsque j'ajoute une borne, je dois lui rentré son Nom et son IP, puis clické sur validé, qui met les donné en Ram avant de cliké sur Quitter pour enregistrer les donné sur le dur (fstream). Lors du click sur Valider, je doit vérifié que l'adresse IP n'est pas déjà utilisé. Pour cela, j'ai fait : > > > > //Valider > > CString tempIP ; > > char * reTempIP ; > > int pareil = 1; > > bool ident ; > > > > reTempIP = new char [20] ; > > GetDlgItemText(EdtIP, tempIP) > > //copie le texte de la zone de text dans la variable > > for(int y =0; y <= NbBornes; y++){ > > //NbBorne = Nombre bornes référencées > > strcpy(reTempIP, objBornes[y].IP) ; > > pareil = strcmp (reTempIP, tempIP) ; > > if(pareil == 0) ident = false ; > > } //vérifie si l'@ IP existe déjà, si oui, ident = false > > > > G une erreur là dedans. Qd je click sur valider (de ajout) si il n'y a pas encore de borne référencé, cela fonctionne, si j'ai déjà référencé des bornes, le prgm plante (et veux envoyer un message à microsoft...) > > Please, HELP !!! > > lcampeur >
|
|
mercredi 11 juin 2003 à 18:13:55 |
Re : Comparaison avec StrCmp()

payen
|
je vais peut etre dire une connerie, mais les chaines comparees sont identiques si la fonction strcmp retourne 0. donc, si les cj=haines sont id, pareil est egal a 0 et ident doit etre a true ... j'dis une connerie ou pas au final ???
------------------------------- Réponse au message : -------------------------------
> En fait, je ne veux pas de 'while' pour une raison simple, c'est que le but c'est justement de ne pas avoir d'@ IP identique, cette boucle ne sert que de vérif et si je clak un while, bin... > Ensuite, ident est un 'bool' et la fonction strcmp retourne un 'int', voilà pkoi je passe par le 'si'. > Sinon, j'ai changé un peu, et supprimé la variable reTempIP : > j'ai fait tout de suite la comparaison : > strCmp(objBornes[y].IP, tempIP) ; > Cela ne compare toujours pas comme je le veux. Dans le débogage, je met 2 IP identiques et le prgm ne les repere pas ! > > ------------------------------- > Réponse au message : > ------------------------------- > > > Pkoi faire tout ça : > > pareil = strcmp (reTempIP, tempIP) ; > > if(pareil == 0) ident = false ; > > > > plutot que ça : > > ident = strcmp (reTempIP, tempIP) ; > > > > et pkoi ne pas faire une boucle while pour tester tes ip et sortir de la boucle des que tu trouves une ip qui correspond ??? Ca serait mieux que le for non ??? > > > > High_Cobra ;) > > > > > > ------------------------------- > > Réponse au message : > > ------------------------------- > > > > > Bonjour, je souhaite effectuer une comparaison, j'ai un programme contenant une structure borne contenant: > > > 1- char NomBorne [20] > > > 2- char IP[16] > > > Mon programme doit réferencé un certain nombre de borne relié en réseau. G une fenetre Gestion sur laquele est présente 2 ListBox (1 Nom & 1 IP) et plusieurs bouton dont Ajouter. > > > Lorsque j'ajoute une borne, je dois lui rentré son Nom et son IP, puis clické sur validé, qui met les donné en Ram avant de cliké sur Quitter pour enregistrer les donné sur le dur (fstream). Lors du click sur Valider, je doit vérifié que l'adresse IP n'est pas déjà utilisé. Pour cela, j'ai fait : > > > > > > //Valider > > > CString tempIP ; > > > char * reTempIP ; > > > int pareil = 1; > > > bool ident ; > > > > > > reTempIP = new char [20] ; > > > GetDlgItemText(EdtIP, tempIP) > > > //copie le texte de la zone de text dans la variable > > > for(int y =0; y <= NbBornes; y++){ > > > //NbBorne = Nombre bornes référencées > > > strcpy(reTempIP, objBornes[y].IP) ; > > > pareil = strcmp (reTempIP, tempIP) ; > > > if(pareil == 0) ident = false ; > > > } //vérifie si l'@ IP existe déjà, si oui, ident = false > > > > > > G une erreur là dedans. Qd je click sur valider (de ajout) si il n'y a pas encore de borne référencé, cela fonctionne, si j'ai déjà référencé des bornes, le prgm plante (et veux envoyer un message à microsoft...) > > > Please, HELP !!! > > > lcampeur > > >
|
|
jeudi 12 juin 2003 à 08:52:02 |
Re : Comparaison avec StrCmp()

lcampeur
|
Si les chaines sont id. la fonction retourne un 0 et avec le 'if' ident doit passer a 'true' (en fait, il devai passer à 'false' au départ, mais c vrai que 'true' c mieu =)). Mais n'empeche que ça marche pas !! Je sais pas si g des caractères invisibles à la fin, mais je ne pense pas que ce soit ça car g testé avec la fonction StrCmpN('chaine1', 'chaine2','n') (n étant le nombre de caracteres a tésté à partir du début). Cela ne fonctionnai pas non-plus !
------------------------------- Réponse au message : -------------------------------
> je vais peut etre dire une connerie, mais les chaines comparees sont identiques si la fonction strcmp retourne 0. > donc, si les cj=haines sont id, pareil est egal a 0 et ident doit etre a true ... > j'dis une connerie ou pas au final ??? > > > > ------------------------------- > Réponse au message : > ------------------------------- > > > En fait, je ne veux pas de 'while' pour une raison simple, c'est que le but c'est justement de ne pas avoir d'@ IP identique, cette boucle ne sert que de vérif et si je clak un while, bin... > > Ensuite, ident est un 'bool' et la fonction strcmp retourne un 'int', voilà pkoi je passe par le 'si'. > > Sinon, j'ai changé un peu, et supprimé la variable reTempIP : > > j'ai fait tout de suite la comparaison : > > strCmp(objBornes[y].IP, tempIP) ; > > Cela ne compare toujours pas comme je le veux. Dans le débogage, je met 2 IP identiques et le prgm ne les repere pas ! > > > > ------------------------------- > > Réponse au message : > > ------------------------------- > > > > > Pkoi faire tout ça : > > > pareil = strcmp (reTempIP, tempIP) ; > > > if(pareil == 0) ident = false ; > > > > > > plutot que ça : > > > ident = strcmp (reTempIP, tempIP) ; > > > > > > et pkoi ne pas faire une boucle while pour tester tes ip et sortir de la boucle des que tu trouves une ip qui correspond ??? Ca serait mieux que le for non ??? > > > > > > High_Cobra ;) > > > > > > > > > ------------------------------- > > > Réponse au message : > > > ------------------------------- > > > > > > > Bonjour, je souhaite effectuer une comparaison, j'ai un programme contenant une structure borne contenant: > > > > 1- char NomBorne [20] > > > > 2- char IP[16] > > > > Mon programme doit réferencé un certain nombre de borne relié en réseau. G une fenetre Gestion sur laquele est présente 2 ListBox (1 Nom & 1 IP) et plusieurs bouton dont Ajouter. > > > > Lorsque j'ajoute une borne, je dois lui rentré son Nom et son IP, puis clické sur validé, qui met les donné en Ram avant de cliké sur Quitter pour enregistrer les donné sur le dur (fstream). Lors du click sur Valider, je doit vérifié que l'adresse IP n'est pas déjà utilisé. Pour cela, j'ai fait : > > > > > > > > //Valider > > > > CString tempIP ; > > > > char * reTempIP ; > > > > int pareil = 1; > > > > bool ident ; > > > > > > > > reTempIP = new char [20] ; > > > > GetDlgItemText(EdtIP, tempIP) > > > > //copie le texte de la zone de text dans la variable > > > > for(int y =0; y <= NbBornes; y++){ > > > > //NbBorne = Nombre bornes référencées > > > > strcpy(reTempIP, objBornes[y].IP) ; > > > > pareil = strcmp (reTempIP, tempIP) ; > > > > if(pareil == 0) ident = false ; > > > > } //vérifie si l'@ IP existe déjà, si oui, ident = false > > > > > > > > G une erreur là dedans. Qd je click sur valider (de ajout) si il n'y a pas encore de borne référencé, cela fonctionne, si j'ai déjà référencé des bornes, le prgm plante (et veux envoyer un message à microsoft...) > > > > Please, HELP !!! > > > > lcampeur > > > > > >
|
|
jeudi 12 juin 2003 à 12:10:56 |
Re : Comparaison avec StrCmp()

lcampeur
|
Bon, bin g réussi, j'au utiliser 'strcmp' (de string.h) au lieu de 'StrCmp' (de shlwapi.h) et ça marche !!!!
------------------------------- Réponse au message : -------------------------------
> Si les chaines sont id. la fonction retourne un 0 et avec le 'if' ident doit passer a 'true' (en fait, il devai passer à 'false' au départ, mais c vrai que 'true' c mieu =)). Mais n'empeche que ça marche pas !! Je sais pas si g des caractères invisibles à la fin, mais je ne pense pas que ce soit ça car g testé avec la fonction StrCmpN('chaine1', 'chaine2','n') (n étant le nombre de caracteres a tésté à partir du début). Cela ne fonctionnai pas non-plus ! > > > > ------------------------------- > Réponse au message : > ------------------------------- > > > je vais peut etre dire une connerie, mais les chaines comparees sont identiques si la fonction strcmp retourne 0. > > donc, si les cj=haines sont id, pareil est egal a 0 et ident doit etre a true ... > > j'dis une connerie ou pas au final ??? > > > > > > > > ------------------------------- > > Réponse au message : > > ------------------------------- > > > > > En fait, je ne veux pas de 'while' pour une raison simple, c'est que le but c'est justement de ne pas avoir d'@ IP identique, cette boucle ne sert que de vérif et si je clak un while, bin... > > > Ensuite, ident est un 'bool' et la fonction strcmp retourne un 'int', voilà pkoi je passe par le 'si'. > > > Sinon, j'ai changé un peu, et supprimé la variable reTempIP : > > > j'ai fait tout de suite la comparaison : > > > strCmp(objBornes[y].IP, tempIP) ; > > > Cela ne compare toujours pas comme je le veux. Dans le débogage, je met 2 IP identiques et le prgm ne les repere pas ! > > > > > > ------------------------------- > > > Réponse au message : > > > ------------------------------- > > > > > > > Pkoi faire tout ça : > > > > pareil = strcmp (reTempIP, tempIP) ; > > > > if(pareil == 0) ident = false ; > > > > > > > > plutot que ça : > > > > ident = strcmp (reTempIP, tempIP) ; > > > > > > > > et pkoi ne pas faire une boucle while pour tester tes ip et sortir de la boucle des que tu trouves une ip qui correspond ??? Ca serait mieux que le for non ??? > > > > > > > > High_Cobra ;) > > > > > > > > > > > > ------------------------------- > > > > Réponse au message : > > > > ------------------------------- > > > > > > > > > Bonjour, je souhaite effectuer une comparaison, j'ai un programme contenant une structure borne contenant: > > > > > 1- char NomBorne [20] > > > > > 2- char IP[16] > > > > > Mon programme doit réferencé un certain nombre de borne relié en réseau. G une fenetre Gestion sur laquele est présente 2 ListBox (1 Nom & 1 IP) et plusieurs bouton dont Ajouter. > > > > > Lorsque j'ajoute une borne, je dois lui rentré son Nom et son IP, puis clické sur validé, qui met les donné en Ram avant de cliké sur Quitter pour enregistrer les donné sur le dur (fstream). Lors du click sur Valider, je doit vérifié que l'adresse IP n'est pas déjà utilisé. Pour cela, j'ai fait : > > > > > > > > > > //Valider > > > > > CString tempIP ; > > > > > char * reTempIP ; > > > > > int pareil = 1; > > > > > bool ident ; > > > > > > > > > > reTempIP = new char [20] ; > > > > > GetDlgItemText(EdtIP, tempIP) > > > > > //copie le texte de la zone de text dans la variable > > > > > for(int y =0; y <= NbBornes; y++){ > > > > > //NbBorne = Nombre bornes référencées > > > > > strcpy(reTempIP, objBornes[y].IP) ; > > > > > pareil = strcmp (reTempIP, tempIP) ; > > > > > if(pareil == 0) ident = false ; > > > > > } //vérifie si l'@ IP existe déjà, si oui, ident = false > > > > > > > > > > G une erreur là dedans. Qd je click sur valider (de ajout) si il n'y a pas encore de borne référencé, cela fonctionne, si j'ai déjà référencé des bornes, le prgm plante (et veux envoyer un message à microsoft...) > > > > > Please, HELP !!! > > > > > lcampeur > > > > > > > > > >
|
|
Cette discussion est classée dans : ip, comparaison, char, borne, retempip
Répondre à ce message
Sujets en rapport avec ce message
Trie liste de saisit sans passer par une insertion [ par Nexouille ]
Voila je dois a partir d'un fichier prendre toute les ip qui s'y trouve dont on ne connait pas le nombre et je dois compter combien de fois elles appa
Socket -> Ip [ par CyberP ]
Comment obtenir l'adresse ip (sous forme de char* : xxx.xxx.xxx.xxx) à partir d'un objet socket (je ne veut pas d'objet SOCK_ADDR mais une ip en char*
Sniffing - raw socket [ par krum ]
J'ai essayé de coder un programme capable de me donner la description de l'en tete IP et TCP des packets que je reçois d'une certaine IP,mais lorsque
Je n'y comprend plus rien :-( [ par ChrOnOs83 ]
Slt à ts,tout dabor je suis dsl mais je ne savai pa tro comen resumé mon pb en quelque mot et c pr cela ke je né pa fai un sujet clair.en realité jaim
"Comparaison" pointeur [ par LordBob ]
Bonjour a tous,voila j'ai des petits problèmes avec une application et mes pointeurs... en fait je récupéren en début de programme l'adresse IP d'une
envoi de paquet ip [ par sendouda ]
Bonjour;j'ai écrit un programme qui permet d'envoyer des paquets ip à une destination.mais quand j'ai voulu le sniffer j'ai pas pu le capter.J'ai beso
urgent:envoi paquet [ par sendouda ]
Bonjour;j'ai écrit un programme qui permet d'envoyer des paquets ip à une destination.mais quand j'ai voulu le sniffer j'ai pas pu le capter.J'ai beso
socket RAW ICMP - fonctionnement et implémentation... [ par smirnoff69ice ]
Salut, Je suis sur un projet et je dois simuler l'envoi de paquets ICMP sur le réseau. J'ai déjà fait un petit programme de test (repris en partie dep
pb abonnement pour socket multicast [ par Spiffou ]
bonjour à tous,je rencontre un problème de programmation réseau sur les sockets (c++ sous visual studio).Je cherche à programmer une classe de gestion
comparaison de chaine de caracteres [ par romainbisson ]
Bonjour,je voudrais comparer une chaine de caractere avec le caractere \n, si ils sont identitiques cela m'incremente un nombre. char c; char l
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|