Allô !
Eh oui c'est encore moi qui répond pas mal partout dans les forums en C
J'ai pas de mérites j'adore le langage...
Bon ta question...
Citer:
1- Comment clone-t-on un bloc de mémoire allouée dynamiquement si j'ai le pointeur original, la taille des données pointées et le pointeur de destination ?
2- Doit-on libérer (avec free()) la mémoire alouée dynamiquement avant que notre programme se termine ?
1- Justement je crois que c'est du C standard que tu fais un memcpy en lui donnant la bonne grandeur.
2- Et quand tu quittes ton application à la fin tu dois libérer le pointeur sinon tu vas avoir des "resources leaks". Tu vas perdre des ressources et ça a souvent des conséquences pernicieuses. Quand c'est une application standalone ça dérange pas trop(et même là encore...). Mais si ton application est un daemon(UN*X) ou un service(NT/2K/XP) tes ressources que tu perds vont avoir une cause directe sur la performance et la stabilité de ton application.
Toujours important de libérer les allocations que nous faisons tout au long du programme. C'est comme de fermer les fichiers que tu ouvres dans ton application, c'est tout aussi important.
Bebye !