PureBasic 5.10 beta 4
PureBasic 5.10 beta 4
...disponible >> ICI <<.
- Les types natifs de champs d'une structure de pointeurs ont été interdits
- Support de FTS4 pour SQLite
- Ajout d'un flag optionnel de DatabaseQuery (): # # PB_Database_StaticCursor et PB_Database_DynamicCursor (pour permettre FirstDatabaseRow () pour travailler sur certains pilotes)
- Les types natifs de champs d'une structure de pointeurs ont été interdits
- Support de FTS4 pour SQLite
- Ajout d'un flag optionnel de DatabaseQuery (): # # PB_Database_StaticCursor et PB_Database_DynamicCursor (pour permettre FirstDatabaseRow () pour travailler sur certains pilotes)
PureBasic 6.03 - Windows 11 22H2 (64 bits)
Re: PureBasic 5.10 beta 4
Je ne comprend pas ça...GG a écrit :- Les types natifs de champs d'une structure de pointeurs ont été interdits
On ne peux plus faire :
Code : Tout sélectionner
*pointeur.l
Code : Tout sélectionner
structure test
champ.a
EndStructure
*pointeur.test


_________________________________________________
Mon site : CeriseCode (Attention Chantier perpétuel
)
Mon site : CeriseCode (Attention Chantier perpétuel

Re: PureBasic 5.10 beta 4
Exact, tu ne peux plus le faire. L'arithmétique des pointeurs n'existe pas avec PB, ça n'avait pas de sens d'indiquer un type natif.graph100 a écrit :On ne peux plus faire :Code : Tout sélectionner
*pointeur.l
Ben si tu peux. 'test' n'est pas un type natif (i, f, d, q, etc) mais une structure.
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
- falsam
- Messages : 7324
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: PureBasic 5.10 beta 4
J'ai recompilé quelques codes et je vais revoir ma copie. Je corrigerais les principaux codes que j'ai laissé sur ce forum comme Canvas Variation, MindMap, Canoid et autres.Pointeurs et taille mémoire
Comme un pointeur reçoit uniquement une adresse mémoire comme valeur, sa taille en mémoire sera celle qui permettra de représenter une adresse du processeur :
- Sur un processeur 32-bit, les adresses sont représentées sur 32-bit, par conséquent un pointeur prendra 32-bit en mémoire (soit 4 octets comme une variable de type ‘long').
- Sur les processeurs 64-bit, les adresses sont représentées sur 64-bit, ce qui implique qu'un pointeur prendra 64-bit en mémoire (soit 8 octets comme une variable de type ‘quad').
C'est pour cette raison qu'un pointeur est une variable dite de type pointeur car son encombrement en mémoire sera lié à la capacité d'adressage mémoire du processeur.
Il en découle qu'affecter un type à un pointeur (*Pointeur.l, *Pointeur.b…) n'a aucun sens puisque l'encombrement mémoire d'un pointeur est imposé par celui d'une adresse et non par celui d'un type.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Re: PureBasic 5.10 beta 4
Tu ne peux plus faire *pointer.l, mais si tu veux conserver un type, tu peux rajouter "Long" à la place :graph100 a écrit :Je ne comprend pas ça...
On ne peux plus faire :Code : Tout sélectionner
*pointeur.l
Code : Tout sélectionner
*pointer.Long
Code : Tout sélectionner
*pointer.Integer
Re: PureBasic 5.10 beta 4
Ok !
Je connaissais le .long et autres, mais c'étais la tournure de phrase que je ne comprenais pas.
Donc, ce que ça veut dire en effectif, c'est qu'un code qui ne fonctionnais pas sous x64 à cause d'une déclaration de pointeur en .l, fonctionnera dorénavant, car (une fois l'erreur correctionnée (
) le pointeur aura automatiquement la taille x64...
Nickel ! (en fait la mise à jour c'est vraiment pour corriger des problèmes !
)
Beau Travail ! J'attends la release avec impatience pour tester, par contre.
Je connaissais le .long et autres, mais c'étais la tournure de phrase que je ne comprenais pas.
Donc, ce que ça veut dire en effectif, c'est qu'un code qui ne fonctionnais pas sous x64 à cause d'une déclaration de pointeur en .l, fonctionnera dorénavant, car (une fois l'erreur correctionnée (

Nickel ! (en fait la mise à jour c'est vraiment pour corriger des problèmes !

Beau Travail ! J'attends la release avec impatience pour tester, par contre.
_________________________________________________
Mon site : CeriseCode (Attention Chantier perpétuel
)
Mon site : CeriseCode (Attention Chantier perpétuel

Re: PureBasic 5.10 beta 4
*pointeur.l sur un système x64 faisait déjà 8 octets; le .l était ignoré, d'où la suppression pour la 5.10, ça ne servait pas, sinon induire en erreur comme tu le faisgraph100 a écrit : Donc, ce que ça veut dire en effectif, c'est qu'un code qui ne fonctionnais pas sous x64 à cause d'une déclaration de pointeur en .l, fonctionnera dorénavant, car (une fois l'erreur correctionnée () le pointeur aura automatiquement la taille x64...

http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Re: PureBasic 5.10 beta 4
on peu toujours pointé sur des structures pour avoir accès au champs , ouf...
Code : Tout sélectionner
Structure AA
a.i
b.i
EndStructure
NewList B.AA()
AddElement(B())
B()\a = 255
B()\b = 512
*ptr.AA = @B()
Debug *ptr\a
Debug *ptr\b
Re: PureBasic 5.10 beta 4
salut
Cool cette nouvelle version
Chez moi sur win7 (x86), les fichier suivants plantent :
- water.pb plante à la ligne 75 (ima)
- CheckObjectVisibility2.pb : ima ligne 179
- LightAttenuation.pb ligne 104 : ima
(je n'ai pas testé tous les fichiers ^^)
Cool cette nouvelle version

Chez moi sur win7 (x86), les fichier suivants plantent :
- water.pb plante à la ligne 75 (ima)
- CheckObjectVisibility2.pb : ima ligne 179
- LightAttenuation.pb ligne 104 : ima
(je n'ai pas testé tous les fichiers ^^)
http://blendman.blogspot.com/
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english
Re: PureBasic 5.10 beta 4
Apparemment ça plante toujours sur RenderWorld().blendman a écrit :salut
Cool cette nouvelle version
Chez moi sur win7 (x86), les fichier suivants plantent :
- water.pb plante à la ligne 75 (ima)
- CheckObjectVisibility2.pb : ima ligne 179
- LightAttenuation.pb ligne 104 : ima
(je n'ai pas testé tous les fichiers ^^)
Alors les questions habituelles :
- tu as installé la 5.10 b4 dans un nouveau répertoire ?
- Tu n'as pas un ancien fichier engine3D.dll qui traine quelque part ?
- Tu peux montrer ton fichier log ?
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.