Prob C : chaine de caractères

Fab -  
Ravachol Messages postés 568 Statut Membre -
Je dispose d'une chaine de caractères nommée date
. Comment la "remplir" avec 10/03/2004 ?
Je suposse que ce n'est pas :
date='10/03/2004'

5 réponses

  1. S@IT
     
    Salut, comme ça :

    char *date;
    date="02/01/05";
    printf("%s", date);
    0
  2. blurk Messages postés 493 Date d'inscription   Statut Membre 160
     
    oui, mais cela va fonctionner seulement lors de l'initialisation
    (lors de la déclaration de la variable).
    pour modifier la date:
    #include <string.h>
    strcpy(date,"03/01/05");
    attention, garder la même longueur de chaine que celle de l'initialisation.

    @mattboll: parce que quand on met '=' devant un pointeur (en dehors de son initialisation), c'est pour lui attribuer une adresse, pas un contenu.

    cordialement
    ¤
    0
  3. Ravachol Messages postés 568 Statut Membre 120
     
    Salut,
    D'après la norme la chaine "02/01/05" est convertie, à la compilation, en un pointeur sur le premier caractère. Cela donnera un type char *, l'exemple de S@IT est donc tout à fait valable à partir du moment ou il est placé à un niveau local, dans le main par exemple. Par contre ça ne passerait pas à un niveau global, en dehors de toute fonction où là cette forme ne peut-être utilisée que dans une initialisation.

    A++

    C'est pas parce qu'ils sont nombreux à avoir tort
    qu'ils ont raison! (COLUCHE)
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. blurk Messages postés 493 Date d'inscription   Statut Membre 160
     
    absolument. et tu as raison pour les globales, il fallait le préciser.
    bonne année :-)
    ¤
    0
    1. Ravachol Messages postés 568 Statut Membre 120
       
      Bonne année à toi et à tous les participants à ce forum.

      A++

      C'est pas parce qu'ils sont nombreux à avoir tort
      qu'ils ont raison! (COLUCHE)
      0