bonjour
au bout d'un moment d'utilisation, mon programme plante.
je suppose que celà vient d'un problème d'allocation de mémoire
voici le principe de mon code :
Je me dit qu'à force de décaller l'adresse de ma chaine, j'arrive dans une zone mémoire non allouée et que mon programme plante à ce moment là.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 void fonctionX (char ** chaine) { // traitement // ... // le but ici est de supprimer le premier caractère de la chaîne (*chaine)++; } void main (void) { char * Trame1 = (char*) malloc(10000*sizeof *Trame1); do { // traitement // ... fonctionX(&Trame1 ); } while (conditionY);
est ce possible ?
est ce que je peux résoudre mon probleme en effectuant un realloc dans "fonctionX" ?
quelle est la syntaxe exacte pour la réalocation d'une chaine à partir de son pointeur (si je suis pas clair, comment réallouer "chaine" dans ma fonction "fonctionX") ?
merci pour vos réponses !![]()
Partager