Programme - darius - PRINTF
bench-003
Messages postés
48
Statut
Membre
-
bench-003 Messages postés 48 Statut Membre -
bench-003 Messages postés 48 Statut Membre -
Bonjour,
j'ai un gros problème :
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
system("title Identification");
char darius [300];
printf("Bonjour ! Entrez votre nom, s'il vous plait.\n");
scanf("%s",&darius);
switch('darius'){
case 'darius' rintf("r");
break;
default : printf("non");
}
system("PAUSE");
return 0;
}
a chaque fois que je met autre chose que "darius" (voir case) ca me fait la fonction printf("r");
merci de votre aide au plus vite :)
j'ai un gros problème :
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
system("title Identification");
char darius [300];
printf("Bonjour ! Entrez votre nom, s'il vous plait.\n");
scanf("%s",&darius);
switch('darius'){
case 'darius' rintf("r");
break;
default : printf("non");
}
system("PAUSE");
return 0;
}
a chaque fois que je met autre chose que "darius" (voir case) ca me fait la fonction printf("r");
merci de votre aide au plus vite :)
A voir également:
- Programme - darius - PRINTF
- Programme demarrage windows - Guide
- Programme word gratuit - Guide
- Message programmé iphone - Guide
- Mettre en veille un programme - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans un autre programme - Guide
2 réponses
Salut,
scanf("%s",&darius);
Tu peux enlever l'esperluette (&) puisque le tableau darius passé en paramètre de la fonction renverra l'adresse de la première case du tableau.
switch('darius')
Horreur ^^. Pour comparer en C des chaînes de caractères, on utilise strcmp (strncmp).
Donc tu ne pourras pas utiliser de switch.
Ce qui donnerait :
Sinon attention à l'utilisation de scanf qui s'avère catastrophique lorsque tu l'utilises sans imposer une taille maximum à ta chaîne.
Cdlt
scanf("%s",&darius);
Tu peux enlever l'esperluette (&) puisque le tableau darius passé en paramètre de la fonction renverra l'adresse de la première case du tableau.
switch('darius')
Horreur ^^. Pour comparer en C des chaînes de caractères, on utilise strcmp (strncmp).
Donc tu ne pourras pas utiliser de switch.
Ce qui donnerait :
if(strcmp(darius,"darius",sizeof darius)==0) {
printf("r");
}
Sinon attention à l'utilisation de scanf qui s'avère catastrophique lorsque tu l'utilises sans imposer une taille maximum à ta chaîne.
Cdlt