Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
6461 connectés 

  FORUM HardWare.fr
  Programmation
  C

  histoire de pointeur

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

histoire de pointeur

n°777919
mirascheat
Posté le 25-06-2004 à 14:02:43  profilanswer
 

Bonjour,
J'ai une chaine de caractère qui peut être de la forme suivante : ",,,,," (une suite de virgules)
Je fais un strtok sur cette chaine avec le délimiteur ",", je devrais donc obtenir une chaine vide "".
Pour tester cette chaine vide je fais une comparaison :
if(strcmp(le resultat du strtok, "" ) != NULL)
sauf que je suis entrain de comparer une chaine de caracteres avec un pointeur ... et voilà le pb du n00b (j'ai essayé *le résultat du strtok, mais ca ne marche pas :-( )
merci pour votre aide.

mood
Publicité
Posté le 25-06-2004 à 14:02:43  profilanswer
 

n°777929
Taz
bisounours-codeur
Posté le 25-06-2004 à 14:06:03  profilanswer
 

le problème de noob c'est que tu as pas lu la documentation de strcmp

n°777932
black_lord
Truth speaks from peacefulness
Posté le 25-06-2004 à 14:06:39  profilanswer
 

une solution : lis ça
http://images-eu.amazon.com/images/P/2100051164.08.LZZZZZZZ.jpg


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
n°777934
Taz
bisounours-codeur
Posté le 25-06-2004 à 14:07:12  profilanswer
 

j'ai bien envie d'avoir ça en smiley tient :D

n°777941
mirascheat
Posté le 25-06-2004 à 14:09:16  profilanswer
 

si si j'ai lu, j'ai le prototype devant les yeux ...
int strcmp(const char * chaine1, const char * chaine2) et fournit NULL si les deux chaines sont les mêmes

n°777948
noldor
Rockn'roll
Posté le 25-06-2004 à 14:11:06  profilanswer
 

pardon ?
strcmp retourne 0 si les chaines sont égales


---------------
http://runnerstats.net
n°777958
mirascheat
Posté le 25-06-2004 à 14:14:55  profilanswer
 

euh pardon c'est un assimilation de débutant que j'ai faite ... 0 = NULL pour moi (enfin avant)

n°777964
Taz
bisounours-codeur
Posté le 25-06-2004 à 14:16:45  profilanswer
 

mirascheat a écrit :

euh pardon c'est un assimilation de débutant que j'ai faite ... 0 = NULL pour moi (enfin avant)

ben t'es mal partit ...
 
 
bon allez, vire ce strcmp et regarde si s[0] == '\0' ça sera plus simple

n°777972
mirascheat
Posté le 25-06-2004 à 14:20:13  profilanswer
 

Juste une question je pensais qu'on ne pouvait pas faire de test genre == sur des chaines de caracteres ?
Et je viens de me rendre compte que mon strtok ne me renvoyait pas "" mais "\0" ...

n°777974
noldor
Rockn'roll
Posté le 25-06-2004 à 14:20:58  profilanswer
 

mirascheat a écrit :

Juste une question je pensais qu'on ne pouvait pas faire de test genre == sur des chaines de caracteres ?
Et je viens de me rendre compte que mon strtok ne me renvoyait pas "" mais "\0" ...

s[0] c'est un char, pas un char*


---------------
http://runnerstats.net
mood
Publicité
Posté le 25-06-2004 à 14:20:58  profilanswer
 

n°777975
cricri_
Posté le 25-06-2004 à 14:21:09  profilanswer
 

mais là c'est une comparaison de caractère

n°777976
Taz
bisounours-codeur
Posté le 25-06-2004 à 14:21:39  profilanswer
 

parce que s[0] c'est une chaine de caractères ?
 
si tu veux t'aider, raisonne au niveau des types : identifie le type exact de chaque partie d'une expression (int, pointeur de char, fonction, etc) et t'auras déjà fait la moitié du boulot

n°777984
mirascheat
Posté le 25-06-2004 à 14:24:59  profilanswer
 

ok donc on peut faire une comparaison de type == sur un caractère mais pas sur chaine de caractere ...
Et il ya une solution avec un strcmp ?


Message édité par mirascheat le 25-06-2004 à 14:25:47
n°777992
Taz
bisounours-codeur
Posté le 25-06-2004 à 14:27:52  profilanswer
 

oui, l'utiliser correctement et s'y fier.
 
sinon y a pas de chaine de caractères à proprement dite en C, alors le == pas pour les string, d'accord, mais peut-être que tu ne comprends pas pourquoi

n°778004
mirascheat
Posté le 25-06-2004 à 14:32:15  profilanswer
 

non c'est vrai je ne sais pas (je me doute que c'est parce qu'un caractere à un nombre ANSI correspondant et que c'est ce nombre qu'om compare mais je n'en suis vraiment pas sur)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  histoire de pointeur

 

Sujets relatifs
pointeur de fonction membre d'une classeComment appeler une fonction à l'aide d'un pointeur sur cette fonction
Une histoire de formulaire qui ne passe pas !!!![ADA] Erreur d'execution | liste chainée => soucis de pointeur ?
pointeur en mode in outproblème de pointeur sur fonction
[C] problème de pointeurPeux-ton faire des pointeur de fonction en java ?
[C++] histoire de constructeurs[Delphi] histoire de pointeur
Plus de sujets relatifs à : histoire de pointeur


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)