Récuperer une chaine 3 caractère dans une chaine de caractère ?
Atomos83
Messages postés33Date d'inscriptionmercredi 23 février 2005StatutMembreDernière intervention10 novembre 2006
-
31 janv. 2006 à 15:50
cs_TeniX
Messages postés118Date d'inscriptionmercredi 24 décembre 2003StatutMembreDernière intervention11 décembre 2011
-
31 janv. 2006 à 18:37
Bonjour, alors voila je vous expose mon problème :
Je doit scanner un fichier, chaque ligne du fichier est de a meme forme, seul les 3 dernieres caractère varient, par exemple :
00100001 00100002 00100003
J'aimerais justement extraire ces 3 caractères mais je block,
j'ai 2 soucis,
Le premier, j'ai fait une boucle qui me lit mon fichier ligne par ligne jusqu'a la fin ... mais il ne s'arrete pas a la fin, il continue indéfiniment !
Le second est que je ne sait pas du tout comment procéder pour récupérer ces 3 caractères, en VB j'aurais fait un right mais la ...
BruNews
Messages postés21041Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 31 janv. 2006 à 16:25
char *lecture[51]; // TABLEAU DE POINTEURS ???
char lecture[50]; // ça c'est un buffer
une chaine finit par un zéro en C, ok ?
char *c; // ICI OUI QUE JE VEUX UN POINTEUR
c = lecture; // POINTE SUR TON BUFFER
while(*c) c++; // VA A LA FIN, LE ZERO FINAL
strcpy(bufferDestination, c - 3); // J'AI FINI, YOUPI
Atomos83
Messages postés33Date d'inscriptionmercredi 23 février 2005StatutMembreDernière intervention10 novembre 2006 31 janv. 2006 à 16:34
Alors, je suis noob en C, et je n'ai donc franchement pas compris du tout ton explication ... si tu pourrais réexpliquer plus ... simplement ?
Merci a toi
SnOOpss
Messages postés571Date d'inscriptionsamedi 3 avril 2004StatutMembreDernière intervention 5 décembre 2013 31 janv. 2006 à 17:05
Lol
Si tu es habitué au right du VB il y a cette fonction trouvée je sais
pas ou, elle est plus bordelique que celle a Brunews mais tu auras pas
de mal a t en servir.
char *C_RIGHT(char *texte, int nbre_caracteres) {
static char resultat[80];
if (nbre_caracteres > 0 && nbre_caracteres < (int)strlen(texte) ) {