Decouper une chaine de caractere

alahyaneali Messages postés 25 Date d'inscription vendredi 19 novembre 2004 Statut Membre Dernière intervention 12 octobre 2007 - 21 oct. 2005 à 16:12
DrChal Messages postés 28 Date d'inscription dimanche 22 décembre 2002 Statut Membre Dernière intervention 30 mars 2012 - 30 mars 2006 à 10:57
Bonjour à tous
j'ai cherché partout comment decouper une chaine de caractere en C
mais je n y arrive pas.
Meme en utilisant substring(date, 1, 2)
En fait j'ai une date (char[4]) -ex: 2005 - et je voudrais juste recuperer 20 dans une variable et 05 dans une autre variable.
voila mon code
#include 
#include <math.h>
#include <string.h>


int main()
{
    char rep;
    int annee, mZ, aZ, sZ;
    char an[4];

    do{ 
        cout << "\n Entrer la date : ";
        cin >> (an);
        annee = atoi(an);
        aZ = substr(an, 1, 2);
        mZ = substr(an, 3, 2);
        
        cout << "\n\n Affichage : " <<  aZ << mZ;

      cout << "\n\n Quitter ? O/N :  ";
      cin >>  (rep);  
    }
    while ( rep =='N' || rep == 'n');   
}

Merci beaucoup de votre aide

2 réponses

clad67150 Messages postés 6 Date d'inscription vendredi 29 août 2003 Statut Membre Dernière intervention 5 novembre 2006
21 oct. 2005 à 22:54
Je vois mal à quoi te sert vraiment le programme, mais tu te complique vraiment la vie (surtout que c'est plein d'erreurs) je te propose ca comme tu as l'air de débuter :

#include

using namespace std;

int main()
{
char rep;
char an[5]; //5 pas 4 car une chaine se termine toujours par '\0'
char aZ[3], mZ[3]; //pareil 3 pas 2
do{
cout << "\n Entrer la date : ";
cin >> (an);

aZ[0] = an[0];
aZ[1] = an[1];
aZ[2] = '\0';
mZ[0] = an[2];
mZ[1] = an[3];
mZ[2] = '\0';

cout << "\n\n Affichage : " << aZ << mZ;
cout << "\n\n Quitter ? O/N : ";
cin >> (rep);
}
while( rep =='N' || rep == 'n');
}
0
DrChal Messages postés 28 Date d'inscription dimanche 22 décembre 2002 Statut Membre Dernière intervention 30 mars 2012
30 mars 2006 à 10:57
Bonjour,
Je cherche également le moyen de découper une chaine de caractère en C pour unix.
ex : 12345aaaaa
gauche : 12345
droite : aaaaa

Y a t-il qq1 qui peut m'aider?
svp

Merci
0
Rejoignez-nous