Bon voila, je commence a deseperer devant 84 octets
de memoire ki se retire de la ram de ma ti v200 (jcrois ke sa le fait aussi pour les autres)
a chaque programme que j'execute mem un simple hello world!!!
Donc, est-ce que quelqu'un pourrai m'éclairer ce serait pas mal...
merci.
Deja merci pour l'historique , j'avais pas remarqué, mais il en reste encore un peu...
.....
arf.... il en restait 16 mais c reglé....
reste plus k'un truc (ou deux)
_ya til une difference entre :char buff[16] et char *buff = malloc(16);?
_et si il y avait un moyen d'utiliser des variables globales entre plusieurs fichier C....g essayé static mais sa a pas trop lair de marcher...
(les var globales sont toutes dans un fichier .h).
merci...
Sally Le 17/01/2006 à 21:48 — oui : ça n'a rien à voir. S'il s'agit d'une variable locale, le premier alloue de la mémoire sur la pile, ce qui fait que cette mémoire sera automatiquement libérée dès que tu quitteras la fonction où tu l'utilises. S'il s'agit d'une variable globale, il réserve la place directement dans le fichier du programme. Le malloc réserve de la mémoire sur le tas, et cette mémoire n'est pas automatiquement libérée, il faut faire un free (buff) quand tu n'en as plus besoin. (Là je n'ai fait qu'un résumé des différences).
— non static c'est le contraire (ça signifie que la variable est locale au fichier). Il faut la déclarer comme "extern" dans tous les fichiers sauf un (cela fait que la variable "appartiendra" au fichier où elle n'est pas déclarée extern, et que les autres fichiers sauront qu'ils doivent la chercher ailleurs).

« Le bonheur, c'est une carte de bibliothèque ! » —
The gostak distims the doshes.Membrane fondatrice de la confrérie des
artistes flous.
L'univers est-il un
dodécaèdre de Poincaré ?
(``
·\ powaaaaaaaaa ! #love#