VB6 - overflow [Résolu]

zippro4012 218 Messages postés mardi 15 juin 2004Date d'inscription 26 février 2006 Dernière intervention - 11 févr. 2005 à 18:25 - Dernière réponse : cqui789 261 Messages postés jeudi 13 janvier 2005Date d'inscription 18 mai 2009 Dernière intervention
- 11 févr. 2005 à 23:58
Dim Var1 as Long


Var1 = 255 * 255 * 255





-> ce code fait l'erreur de dépassement de capacité (Overflow) alors
que le type long est largement capable de stocker le résultat. En fait
les calculs internes ont l'air d'être limités a Integer.





Mais alors, comment faire






Afficher la suite 

5 réponses

Meilleure réponse
pelw 148 Messages postés dimanche 12 janvier 2003Date d'inscription 14 février 2005 Dernière intervention - 11 févr. 2005 à 18:43
3
Merci
Essaye ceci :

Dim Var1 As Long
Var1 = CLng(255) * CLng(255) * CLng(255)

@+

pelw

Merci pelw 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 74 internautes ce mois-ci

Meilleure réponse
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 11 févr. 2005 à 18:44
3
Merci
Salut
Problème connu

--> Var1 = 255! * 255! * 255!

Vala
Jack
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)

Merci cs_Jack 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 74 internautes ce mois-ci

Meilleure réponse
cs_CanisLupus 3758 Messages postés mardi 23 septembre 2003Date d'inscription 13 mars 2006 Dernière intervention - 11 févr. 2005 à 19:04
3
Merci
Bonne question, je crois que c'est un bug de vb que j'ai résolu de la manière suivante :

Dim Var1 As Long
Var1 = 1
Var1 = Var1 * 255 * 255 * 255

Cordialement, CanisLupus

Merci cs_CanisLupus 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 74 internautes ce mois-ci

zippro4012 218 Messages postés mardi 15 juin 2004Date d'inscription 26 février 2006 Dernière intervention - 11 févr. 2005 à 19:20
0
Merci
J'ai essayé toutes les méthodes : toutes marchent ! Merci beaucoup pour vos réponses !


cqui789 261 Messages postés jeudi 13 janvier 2005Date d'inscription 18 mai 2009 Dernière intervention - 11 févr. 2005 à 23:58
0
Merci
il suffit d'un long pour que vb calcule en long.

Var1 = 255! * 255 * 255

marche aussi

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.