begin process at 2012 05 29 13:48:11
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

pointeur sur char *


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

pointeur sur char *

mercredi 30 juin 2004 à 11:12:53 | pointeur sur char *

Clonk


Bonjour,
Voilà mon petit problème:
je voudrais copier dans une variable x le contenu d'une variable y jusqu'à un caractère spécifié.
Je voudrais aussi enlever de y la valeur de x.
ex : y = "a, b, c" je veux copier jusqu'à la première virgul et avoir:
x = "a" et y = "b, c"
voilà comment je l'ai fait pour le moment:

int substr(char * src, const char * car, char * Dst)
{
char * l;
char * c = src;
char * t = Dst;
//Je récupère l'adresse de monpremier caractère de séparation:
if (NULL == (l = strstr (c, car)))
return -1;
//s'il n'existe pas, je sors.
while (*c != *l)
{
//Je recopie dans Dst le contenu de src jusqu'à mon caractère spécifique
*t++ = *c++;
}
*l++;
*l++;
//Je remet C au début de src
c = src;
//je copie le contenu de l dans src:
while (*l)
*c++ = *l++;
*t = 0;
*c = 0;
return 0;
}


le problème : je n'arrive pas à copier l dans src : unhandled exception.... Access violation

Alors si quelqu'un sait ce que se passe....

Merci ;)
mercredi 30 juin 2004 à 11:40:49 | Re : pointeur sur char *

AlexMAN

Membre Club
Tu veux simplement copier une chaine dans une autre juska une virgule ou otre caractere ??
exemple :

char sBuffer[] = "a,b,c";
char *s = sBuffer;
char sNew[256], *n = sNew;

do {
*n++ = *s++;
} while (*s != ',');
*n = 0;

Voila, c oci simple ke ca ! Si c pas tt a fait ca ke tu voulais, nésite pas a redemander !

++

Alhexman
mercredi 30 juin 2004 à 11:55:59 | Re : pointeur sur char *

Clonk


Ca je sais le faire, C déjà ce qui est fait dans ma fonction, le truc C qu'apres, je veux virer dans la première variable le contenu de la deuxième.
Y = "a, b, c", x = NULL
apres traitement :
Y = "b, c", x = "a"
mercredi 30 juin 2004 à 12:02:00 | Re : pointeur sur char *

AlexMAN

Membre Club
ok.

char *sBuffer, *s;
char sNew[256], *n = sNew;

sBuffer = (char *)malloc(6);
strcpy(sBuffer, "a,b,c");

do {
*n++ = *sBuffer++;
} while (*sBuffer != ',');
*n = 0; sBuffer++;

....

free(sBuffer);

Voila, au lieu de travailler avec des pointeurs sur ton buffer, tu travailles directement sur celui-ci.

++

Alhexman
mercredi 30 juin 2004 à 12:32:29 | Re : pointeur sur char *

AlexMAN

Membre Club
J'ai oublié :

char *save;

apres l'allocation, tu fais un save = sBuffer; pour sauvegarder l'adresse d'allocation pour ensuite pouvoir libéré proprement : free(save);

voila

++

Alhexman

PS : jne sui pas tres sur de cette methode, donc verifie sil n'y a pas de memory leak a partir d'un pti code present sur le site...


Cette discussion est classée dans : caractère, contenu, char, copier, src


Répondre à ce message

Sujets en rapport avec ce message

manipulation desformules logiques : URGENT [ par The_Legacy ] Bonjour, je suis en train de développer un petit programme qui permet d'évaluer des expression logiques telles que ((a et b) ou (c et (non d))).A part operator [] ds une classe string pr retourner un caractère [ par ngryman ] Salut à ts,voilà j'ai un petit souci ds une classe String que j'ai fait. J'ai inclu un opérateur [] qui comme un char* retourne le char à la position Supprimer, Copier [ par neo888 ] Lut,J'utilise c++builder 6 et je voudrais par l'intermediaire d'un button, supprimer tout le contenue d'une disquette et y copier apres des répertoire Classe en c++ [ par aciid_washor ] Bonjour, j'essaye de créé une classe donnee qui comporterait un nom et un numéroJe déclare donc:class donnee{ public: char nom; char num Char et caractère NULL [ par Arecibo ] Lorsque je déclare : char Texte[16];est ce que je déclare :- une variable de type char de 16 caractères PLUS le caractère NULLou- une vari pbme avec chaine de caractère et sscanf (débutant :( ) [ par peyou ] sur une chaine de caractère de la forme "bidule = machin", je voudrais extraire les deux chaines "bidules" et " machin"1/ le nombre d'espace autour du Fonction API permettant de copier le contenu d'une fenêtre dans une var HBITMAP [ par elflink ] Bonjour à tous et à toutes,Je suis à la recherche d'une fonction API qui permettrait de copier le contenu d'une fenêtre window dans une variable de ty aarg Chaine de caractère [ par NeoUmbrella ] Voila j'ai une question tres bete mais je ne comprends pas:char mot1[] = "test";char mot2[] = "test";Pourquoi qand je test avec un if mot1 n'est pas e chaîne de caractère avec int [ par kyfranBibax ] Coucou, Alors, j'ai un petit problème pour une conversion en chaîne de caractère... Voilà comment ce que j'ai essayé : 1)    char* messErr=sprintf(s [ C ] copier ds un tableau apres un read? [ par lcstriker ] bonjour!!!g un leger probleme, que je suis sur vous serai nombreux a pouvoir resoudre:#include #define BUFF_SIZE 42int main(int ac, char **av){


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,468 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales