IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

saisir une chaine et mettre la chaine dans un tableau en supprimant les espaces


Sujet :

C

  1. #1
    Membre régulier
    Inscrit en
    Octobre 2010
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 112
    Points : 70
    Points
    70
    Par défaut saisir une chaine et mettre la chaine dans un tableau en supprimant les espaces
    bonjour,

    j'ai essayé ce code mais sans succès ,je suis sous linux,je n'ai pas eu de message d'erreur.est ce que la phrase1 se met bien dans le tableau ? si oui pourquoi je ne vois par
    le \0 quand j'affiche tout les caractères du tableau?peut-on affiché \0?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    #include <stdio.h>
    #include <string.h>
     
    main()
     
    { 
    char phrase1[40] ;
    char phrase2[40] ;
    char phrase1_bis[40];
    char phrase2_bis[40];
    int i,j,y,longueurchaine1,longueurchaine2  ;
    i = 0 ;
    longueurchaine1 = 0 ;
    longueurchaine2 = 0 ;
     
    printf("votre phrase1 : ");
    gets (phrase1);
     
     
    for (i=0; i<40; i++)
    {
      for(y=0 ; phrase1[i] != '\0' ; y++ )
         {
     
             if (phrase1[i] != ' ')
                {
                 phrase1_bis[i] = phrase1[i];
                   y++;
                 }
          }
    }
     
    for (i = 0  ; phrase1[i] !=0 ; i++)
     
    printf("phrase1_bis [%d] = %c\n",i ,phrase1_bis[i] );
     
     
    longueurchaine1 = strlen(phrase1_bis);
    printf("la phrase1 fait %d caracteres de long \n " , longueurchaine1);
     
    return 0;
     }
    Si vous pouvez me dire ce qu'il ne va pas,

    Merci.

  2. #2
    Membre actif Avatar de quetzacoatl
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 168
    Points : 223
    Points
    223
    Par défaut
    C normal qu'il ne t'affiche pas le \0, c'est le caractère signifiant fin de chaine, ça serait donc vraiment idiot de l'afficher. Si cependant tu veux absolument le voir, tu affiches le caractère en %d, la tu verras un beau zéro.

Discussions similaires

  1. Réponses: 6
    Dernier message: 05/11/2010, 23h15
  2. Supprimé les espaces et les '\n' dans une chaine
    Par EricStib dans le forum Général Python
    Réponses: 6
    Dernier message: 04/01/2009, 18h02
  3. Réponses: 9
    Dernier message: 06/11/2007, 12h36
  4. supprimer les espaces dans une chaine de char
    Par poulette3000 dans le forum Linux
    Réponses: 2
    Dernier message: 17/10/2007, 11h45
  5. Supprimer les espaces dans une chaine de caractères
    Par arnaudperfect dans le forum Shell et commandes GNU
    Réponses: 13
    Dernier message: 23/07/2007, 22h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo