Erreurs, bugs, questions - page 1970
![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
C'est-à-dire mettre la couleur de l'objet à clrNONE, puis lire la couleur de l'objet.
lire la couleur d'un autre objet
Oui, merci. J'y ai corrigé les noms, mais l'erreur est toujours là.
donne à l'objet la couleur clrNONE, puis lit la couleur de l'objet, la compare avec clrNONE - elles ne correspondent pas.
clrNONE - tous les bits de 4 octets sont remplis de uns.
ulong clr - tous les bits de 8 octets sont remplis de uns.
Oui, merci. J'y ai corrigé les noms, mais l'erreur est toujours là.
En fait, dans ObjectGetInteger, au lieu de
il va
solution : écrire x au lieu de x partout.
clrNONE - tous les bits des 4 octets sont remplis de uns.
ulong clr - tous les bits de 8 octets sont remplis de uns.
Il y a une sorte d'erreur ici, je pense.
1. clrNONE est un nombre positif de 4 octets puisque Alert( long(clrNONE) ) == 4294967295 (s'il était négatif (signe de la couleur), il passerait en moins)
2. Nous l'avons converti en long dans SetInteger, la valeur n'a pas pu changer.
3. Pourquoi est-ce que j'obtiens un nombre non primaire dans SetInteger ?
Soit la couleur à l'intérieur de la borne est convertie en un type signé, int par exemple, et croît ensuite lorsqu'elle est convertie en long, soit quelque chose d'autre.
S'agit-il d'une erreur (tableaux différents) ou non ?
Non, ça ajoute juste un 0 final.
Ajout d'une ligne au-dessus - spécifié pour copier la longueur de la ligne. Ça a commencé à correspondre. C'est-à-dire qu'il s'avère que le paramètre d'entrée count = -1 ajoute zéro à la fin, tandis que count = StringLen n'ajoute rien. Nyuansyk !
C'est-à-dire qu'il s'avère que le paramètre d'entrée count = -1 ajoute zéro à la fin, tandis que count = StringLen n'ajoute rien. Nuncie !
Eh bien, en mql, les chaînes de caractères sont des chaînes nulles, c'est-à-dire un ensemble de caractères avec un '\0' à la fin. StringLen ne tient pas compte de ce 0, alors que la conversion en tableau tient compte de la longueur totale.
Demandez aux développeurs les raisons de cette différence. Mais je ne peux pas dire que c'est trop pénible.