Probleme d'Allocation

Signaler
Messages postés
40
Date d'inscription
samedi 14 décembre 2002
Statut
Membre
Dernière intervention
5 juillet 2007
-
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
-
Je pense avoir un petit probleme d'allocation avec mes fonction:

Si je fais :

char * fonction ( int SIZE)
{
char *buff;
buff =new char[SIZE];
//(char = 1octet)
...
return buff;
}

ou

char * fonction ( int SIZE)
{
char buff[XXX];
// on suppose que XXX sera forcement <SIZE
...
return buff;
}

Est ce que une fois que ma fonction a retourné buff, et ce que l'allocation en memoire de buff sera libéré???
Merci!!
Oliverman.

2 réponses

Messages postés
398
Date d'inscription
jeudi 30 octobre 2003
Statut
Membre
Dernière intervention
15 juin 2007
2
non, pour la liberer, utiliser free
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
1er cas : en effet faut utiliser delete poour libérer

2nd cas : ne marche pas, car buff est local à la fonction et le pointeur retourné n'est donc plus valable en sortie (supprimé automatiquement).