J'écris une fonction très simple en C pour vérifier si une chaîne est un chemin absolu ou un chemin relatif. Peu importe ce que j'essaie, il revient toujours faux.Vérification de la première lettre d'une chaîne en c
Voici ce que j'ai essayé:
int isAbsolute(char *str){
if(strcmp(str,"/")){
return 1;
}
return 0;
}
et je l'appelle comme:
printf("%d\n", isAbsolute("/"));
qui revient faux à chaque fois. Clairement, il me manque quelque chose d'évident mais je n'ai pas été capable de le comprendre ...
'strcmp' compare la chaîne entière, il ne retourne true si la chaîne vous passez est «/». Vous pouvez regarder 'strncmp' à la place, ou comparer seulement un caractère (' if (str [0] == '/') '), au lieu d'une chaîne. – AntonH
@AntonH: Pourquoi ne pas placer cela comme une réponse? – alk
@alk Je n'allais que commenter pourquoi cela ne fonctionnait pas, mais j'ai édité une solution après. Mettez-le comme une réponse maintenant ... – AntonH