Renvoi d'un pointeur sur une variable automatique - C - Programmation
Marsh Posté le 15-11-2010 à 19:02:39
Moui, c'est correct écrit de la sorte. Faut quand même faire attention, parce que si tu appelles une deuxième fois la fonction init_chaine(), le buffer de ton premier appel va être écrasé (ce qui n'est pas toujours évident à garantir, surtout lorsque les appels de fonctions sont imbriqués sur un paquet de niveau).
Pour une meilleure encapsulation, je te conseillerais d'utiliser des variables statiques :
Code :
|
Marsh Posté le 15-11-2010 à 23:19:16
Citation : Pour une meilleure encapsulation, je te conseillerais d'utiliser des variables statiques |
Pareil.
A+,
Marsh Posté le 15-11-2010 à 18:55:13
Bonjour,
J'ai un problème pour une fonction qui renvoie un pointeur sur une variable automatique.
Le 1er code que j'utilisais est le suivant mais il ne fonctionne pas car ma variable chaine est détruite lors de la sortie.
Je travaille sur micro contrôleur et je n'ai pas accès à l'allocation dynamique (malloc). J'utilise donc une variable globale pour ma chaine mais le pointeur retourné est local.
Cela vous parait-il bon ?
Merci d'avance.