Affichage en c

Fermé
mb42 Messages postés 432 Date d'inscription vendredi 17 octobre 2008 Statut Membre Dernière intervention 14 janvier 2014 - 14 déc. 2009 à 07:23
Groarh Messages postés 682 Date d'inscription vendredi 1 août 2008 Statut Membre Dernière intervention 28 juin 2015 - 15 déc. 2009 à 10:08
Bonjour,


je travail avec les fichiers en c

le fichier contient les noms des employers

mon but est d'affichier les employers qui leur nom commence par par un caractere qu'on dois entrer au clavier

par exemple les employers qui commence par 'A'

je connait la fonction strcmp qui compare deux chaines mais ca ne marche pas avec mon ca

pouvez vous m'aidez a resolu ce probleme

merci d'avance

5 réponses

Groarh Messages postés 682 Date d'inscription vendredi 1 août 2008 Statut Membre Dernière intervention 28 juin 2015 185
14 déc. 2009 à 08:44
Salut,
je sais pas si c'est optimisé mais si tu convertis ton char en char* comme un bourrin (comme moi :P),

#include<stdio.h>

int main(int argc, char** argv) {
	char myChar = 'A';
	char convertedChar[2];
	convertedChar[0] = myChar;
	convertedChar[1] = '\0';
	printf("%s\n", convertedChar);
}


tu peux alors utiliser la fonction strncmp.
0
Ah que coucou!
14 déc. 2009 à 10:22
salut

et pourquoi pas argv[0][0] == myChar ?
0
Groarh Messages postés 682 Date d'inscription vendredi 1 août 2008 Statut Membre Dernière intervention 28 juin 2015 185
14 déc. 2009 à 18:06
Parce qu'on compare des char* pardi !
0
Ah que coucou!
15 déc. 2009 à 01:38
je viens de m'installer un ubuntu 9.04 avec un gcc 4.3.3
je lui ai donné
#include<stdio.h>
void main(int argc, char** argv) {
  int i;
  if(--argc)
    for(i=1;i<=argc;i++)
      if(argv[i][0]=='A')
        printf("%d%s argument: '%s'\n", i, i==1?"er":"eme", argv[i]);
}


et quand j'appelle ce magnifique programme essai j'ai
user@coucou:~/$ ./essai
user@coucou:~/$ ./essai hello world !
user@coucou:~/$ ./essai salut\ Antoine !
user@coucou:~/$ ./essai salut Antoine et annabelle
2eme argument: 'Antoine'
user@coucou:~/$ ./essai Antoine salue Annabelle
1er argument: 'Antoine'
3eme argument: 'Annabelle'

donc, on peut tester argv[i][0] == myChar !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Groarh Messages postés 682 Date d'inscription vendredi 1 août 2008 Statut Membre Dernière intervention 28 juin 2015 185
15 déc. 2009 à 10:08
Pas con ^^ j'avais mal compris dsl. Donc en fait :

nomEmploye[0] == 'A'
C'est pour ça qu'il y a pas de fonction santard qui fait ça, c'est trop simple :P

mb42 c'est ok pour toi ?
0