___Ia ora na fa'ahou.
1) La limite d'une chaîne VB6 est de 2^31, un peu plus de deux milliards d'octets ; c'est d'ailleurs aussi celle d'un
entier long qui permet de travailler dessus (-2 147 483 648 à 2 147 483 647).
2)
___Si vous exécutez un programme dans une machine virtuelle, vous risquez en effet d'être confronté aux limites de mémoire de cette machine, indépendamment de VB (Daudet78 a donné la solution).
3)
1 2 3
| For i = 1 To Len(a)
b = b & Mid(a, i, 1)
Next i |
___L'instruction de la deuxième ligne oblige à recréer à chaque fois une nouvelle chaîne à partir de la précédente ; c'est sans conséquence pour des chaînes de taille réduite, mais devient très pénalisant avec des chaînes de plusieurs Mo ; il semble plus rapide à l'exécution de créer au départ une chaîne B de la longueur voulue (ici, len(A)) puis d'écrire
1 2 3
| For I& = 1 To Len(A$)
Mid$(B$, I&, 1) = Mid$(A$, I&, 1)
Next I& |
___Je vous accorde que cette remarque est sans grand intérêt dans l'immédiat, puisque cette partie du programme est bidon, et que
irait encore plus vite. Mais
___Sauf que ce
codage rien que pour voir génère une occupation de la mémoire et des délais qui peuvent ne pas être anodins.
___Bonne poursuite de vos travaux.
Partager