Chaine de caractère et HEAPALLOC

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Chaine de caractère et HEAPALLOC

Message par Backup »

mad a écrit : Donc dans une procédure, il est possible d'allouer sur la pile directement
ce qui reste logique , dans une procedure tout est Local
donc tout est empilé :)

je pense que le premier Heapalloc , doit etre une securité pour etre sur d'avoir un emplacement
au cas ou , faudrait demander ça a Fred , qui sera le plus a meme de repondre a ça :)

lorsqu'on genere le code assembleur par le compilo de Purebasic
il y a une librairie Heap qui semble inclue dans le source a chaque fois ...
ça doit etre un minimum requit pour un exe fait par Fasm ( l'assembleur sous-couche de Purebasic )
Mais bon 1000€ la licence je crois...
oui ben pour ma part , l'utiliser 3 fois de temps en temps , ça va rester comme ça :lol:
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Re: Chaine de caractère et HEAPALLOC

Message par djes »

J'ai pas de débog installé là, mais je me demande (comme Dobro?) si le heapalloc n'est pas appelé que la première fois. Moi c'est ce que j'aurais fait à la place de Fred : réservation de l'espace mémoire au premier appel (ou à la déclaration) et puis réutilisation. Mais peut-être qu'il n'a pas voulu s'emmerder avec ça.
mad
Messages : 32
Inscription : mar. 24/nov./2009 10:34

Re: Chaine de caractère et HEAPALLOC

Message par mad »

Salut Djes,

Enfait Ce qu'a montré Dobro, c'est que, effectivement, il alloué au lancement du programme 4096 octets, en faisant sont heapalloc. Nous voyons, même dans l'exemple de Dobro, qu'il il alloue sur le tas d'où la notion de source

Image

Car effectivement, le programme par défaut et hors fonction alloue dès que l'on utilise un type string une page de 4Ko par défaut.

Donc a ce moment là, il n'a pas besoin de faire une variable automatique.

Mais il compte quand même, car la taille est fixé...

Image


Par contre c'est différent lors dans une fonction...
Répondre