J'ai essayé cela pendant environ une heure et j'ai regardé d'autres endroits en ligne mais je n'ai pas encore réussi à accomplir ce que j'essaie de faire. Cela devrait probablement être quelque chose de simple mais je n'ai pas codé en C depuis un moment, donc il me manque peut-être quelque chose. Quoi qu'il en soit, je veux utiliser strcmp pour comparer quelque chose dans une variable appelée char * args et un littéral comme "qw".Utilisation de strcmp pour comparer un pointeur char et un littéral
Je suis en main et passe une fonction cette variable args et quand je la récupèrerai, je veux comparer comme ceci: Peut-être que je fais tout simplement complètement de manière stupide.
char *args;
char **svdArray;
int keepTrack = 0;
int beforeTrack = 0;
svdArray = malloc(5*sizeof(char*));
while (1)
{
if(!(strcmp(args[0], "r")) && (!strcmp(args[0], "rr")))
{
svdArray[keepTrack] = args[0];
keepTrack++;
}
Tout ce que je veux arriver est si I args [0] a quelque chose en plus ou rr r Je veux exécuter le code dans l'instruction if. Cependant, à partir de maintenant, le flux n'entre jamais et je ne sais pas pourquoi.
Toute aide serait grandement appréciée !!!
Votre programme exemple est même pas syntaxiquement correct - s'il vous plaît montrer votre * code réel *. –
'args []' ne compile pas. –
strcmp renvoie 0 (false) lorsque les chaînes sont égales, donc la fonction peut être utilisée pour trier des chaînes différentes – hetepeperfan