Urgence c++
Résolu/Fermé
yanlou
Messages postés
119
Date d'inscription
dimanche 30 septembre 2007
Statut
Membre
Dernière intervention
11 août 2010
-
7 juil. 2008 à 11:10
yanlou Messages postés 119 Date d'inscription dimanche 30 septembre 2007 Statut Membre Dernière intervention 11 août 2010 - 7 juil. 2008 à 12:26
yanlou Messages postés 119 Date d'inscription dimanche 30 septembre 2007 Statut Membre Dernière intervention 11 août 2010 - 7 juil. 2008 à 12:26
10 réponses
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
7 juil. 2008 à 11:13
7 juil. 2008 à 11:13
tu vedrai tester la presence du character"-" car si il n y est pas, sousligne2=sousligne1
yanlou
Messages postés
119
Date d'inscription
dimanche 30 septembre 2007
Statut
Membre
Dernière intervention
11 août 2010
13
7 juil. 2008 à 11:27
7 juil. 2008 à 11:27
non, voila un exemple :
1) j'ai une chaine :
AEZCDA2-D2
2) je doit avoir :
AEZCDA2 AEZCDD2
1) j'ai une chaine :
AEZCDA2-D2
2) je doit avoir :
AEZCDA2 AEZCDD2
yanlou
Messages postés
119
Date d'inscription
dimanche 30 septembre 2007
Statut
Membre
Dernière intervention
11 août 2010
13
7 juil. 2008 à 11:29
7 juil. 2008 à 11:29
mais avec le code que j'ai j'obtien ça
AEZCDA2 D2
est bien sur ce n'est pas ce que je veux :p
AEZCDA2 D2
est bien sur ce n'est pas ce que je veux :p
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
7 juil. 2008 à 11:29
7 juil. 2008 à 11:29
es ce que ca peut arriver que tu aii des trucs comme ca: AEZCDA2-D2-A5-R3 ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
yanlou
Messages postés
119
Date d'inscription
dimanche 30 septembre 2007
Statut
Membre
Dernière intervention
11 août 2010
13
7 juil. 2008 à 11:36
7 juil. 2008 à 11:36
non, just commeça
AEZCDA2-D2
ESRZDA3
AEZCDA2-D2
ESRZDA3
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
7 juil. 2008 à 11:45
7 juil. 2008 à 11:45
j ai pas le temps de le faire.
utilises les fonctions du C: strchr ou ce genre de chose,
detecte la position du -, si il n y en a pas, tu copies direct la chaine
si il y en a un, tu gardes bien son pointeur, tu met le contenu a 0
tu imprimes la premiere chaine
ensuite, tu incremente ton pointeur qui pointait sur le - que tu as remplkacé par 0
tu recupère la longeur de la premiere chaine, la longueur de la 2eme chaine
et tu fais un strcpy(première chaine+(strlen(premierechaine)-strlen(deuxieme chaine))), deuxieme chaine
et la tu re imprime la premiere chaine ...
utilises les fonctions du C: strchr ou ce genre de chose,
detecte la position du -, si il n y en a pas, tu copies direct la chaine
si il y en a un, tu gardes bien son pointeur, tu met le contenu a 0
tu imprimes la premiere chaine
ensuite, tu incremente ton pointeur qui pointait sur le - que tu as remplkacé par 0
tu recupère la longeur de la premiere chaine, la longueur de la 2eme chaine
et tu fais un strcpy(première chaine+(strlen(premierechaine)-strlen(deuxieme chaine))), deuxieme chaine
et la tu re imprime la premiere chaine ...
yanlou
Messages postés
119
Date d'inscription
dimanche 30 septembre 2007
Statut
Membre
Dernière intervention
11 août 2010
13
7 juil. 2008 à 11:49
7 juil. 2008 à 11:49
avec ce code j'obtien pour une chaine comme ça
AFRZSA2-D2
ADDSEA3
le resultat
AFRZSA2 AFRZSD2
ADDSEA3 ADDSEA3 // je veux pas que cette chaine ce double je veux avoir ADDSEA3
#include <string>
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
ifstream fichier("slash.txt");
if (fichier)
{
string ligne;
while (getline(fichier,ligne))
{
size_t pos=ligne.find_first_of("-");
string sousligne1=ligne.substr(0,pos);
string sousligne2=ligne.substr(pos+1);
string sousligne3=sousligne1.substr(0,sousligne1.size()-2).append(sousligne2);
cout<< sousligne1 << " " << sousligne3 << endl;
}
}
fichier.close();
}
AFRZSA2-D2
ADDSEA3
le resultat
AFRZSA2 AFRZSD2
ADDSEA3 ADDSEA3 // je veux pas que cette chaine ce double je veux avoir ADDSEA3
#include <string>
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
ifstream fichier("slash.txt");
if (fichier)
{
string ligne;
while (getline(fichier,ligne))
{
size_t pos=ligne.find_first_of("-");
string sousligne1=ligne.substr(0,pos);
string sousligne2=ligne.substr(pos+1);
string sousligne3=sousligne1.substr(0,sousligne1.size()-2).append(sousligne2);
cout<< sousligne1 << " " << sousligne3 << endl;
}
}
fichier.close();
}
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
7 juil. 2008 à 11:53
7 juil. 2008 à 11:53
je sais pas si ce que je veux te faire faire avec les strcpy et les pointeurs est utilisable sur un objet string .... utilise des tableaux de charactères plutot, a la vieille franquette
yanlou
Messages postés
119
Date d'inscription
dimanche 30 septembre 2007
Statut
Membre
Dernière intervention
11 août 2010
13
7 juil. 2008 à 12:10
7 juil. 2008 à 12:10
je pense que ça va marché avec un if...else bein je vais esséyé et si ya kélk1 ki peux aidé ça sera la bien venu :p
yanlou
Messages postés
119
Date d'inscription
dimanche 30 septembre 2007
Statut
Membre
Dernière intervention
11 août 2010
13
7 juil. 2008 à 12:26
7 juil. 2008 à 12:26
ya kélk1 pour m'aidé ?!!