Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 643

 
Bonjour, bonjour, les personnes qui connaissent la compatibilité des types int et datetime, merci de les conseiller. Si je ne me trompe pas, datetime est un entier représentant le nombre de secondes écoulées à partir de 0 heure du 1er janvier 1970, alors puis-je affecter la valeur de TimeCurrent() à une variable entière et ensuite la comparer à une variable de type datetime ?
 
Андрей:
Bonjour, pouvez-vous me conseiller sur la compatibilité des types int et datetime, si je ne me trompe pas. Si je ne me trompe pas, datetime est un entier représentant le nombre de secondes écoulées à partir de 0 heure du 1er janvier 1970, puis-je affecter une valeur de TimeCurrent() à une variable entière et ensuite la comparer à une variable de type datetime ?

la date peut être deux fois plus importante, octet par octet.

https://www.mql5.com/ru/docs/basis/types/casting

Документация по MQL5: Основы языка / Типы данных / Приведение типов
Документация по MQL5: Основы языка / Типы данных / Приведение типов
  • www.mql5.com
Часто возникает необходимость преобразовать один числовой тип в другой. Не каждый числовой тип допустимо преобразовать в другой, допустимые преобразования в MQL5 показаны на схеме: Сплошные линии со стрелками обозначают преобразования, которые выполняются без потери информации. Вместо типа char может выступать тип bool (оба занимают в памяти 1...
 
Андрей:
Bonjour, bonjour ! Pouvez-vous me conseiller sur la compatibilité des types int et datetime ? Si je ne me trompe pas, datetime est un entier représentant le nombre de secondes écoulées à partir de 0 heure du 1er janvier 1970. Puis-je affecter une valeur à une fonction TimeCurrent() dans une variable entière et ensuite la comparer à une variable de type datetime ?

Oui, vous pouvez, mais il est préférable d'utiliser ulong

 
Sergey Maksiutenko:

Hélas, je ne comprends pas...

S'il vous plaît, dites-moi.

Ce code fonctionnera de deux façons

1.

#property library
#property strict
//=========================
int calc (int a,int b)export
{
int c = a + b;
return(c);
}

2.

#property library
//#property strict
//=========================
int calc (int a,int b)//export
{
int c = a + b;
return(c);
}
La vidéo date de 2013, et à l'époque aucune réflexion n'avait été menée sur la directive #propriété stricte.
 
Taras Slobodyanik:

la date peut être le double d'octets

https://www.mql5.com/ru/docs/basis/types/casting

Oui, je l'ai lu et comme je n'y ai rien vu concernant la conversion du type datetime en entier, j'ai posé la question ici. Si l'entier est de type ulong, aura-t-il assez d'octets pour accueillir l'heure sans aucune perte ? Je vais vous expliquer pourquoi cette tracasserie. J'ai un tableau bidimensionnel qui stocke des données entières et je dois y mettre une date.
 
Андрей:
Oui, je l'ai lu et comme je n'y ai rien vu concernant la conversion du type datetime en entier, j'ai posé la question ici. Et disons que si un entier est de type ulong, aura-t-il assez d'octets pour accueillir l'heure sans perte ? Je vais vous expliquer pourquoi cette tracasserie. J'ai juste un tableau à deux dimensions, qui stocke des données entières et j'ai besoin de visser dans une date.

datetime est ulong

 
Sergey Maksiutenko:

Si vous voulez dire la propriété de labibliothèque#property

Je l'ai fait vérifier...

Sans lui, le fichier de la bibliothèque ne se compile même pas.
Vitaly Gorbunov:

Je vais fumer pour ne pas écrire trop sévèrement et essayer de vous expliquer ce qu'est la #propriété stricte.

Ne vous donnez pas la peine.

Je comprends que vous ne pouvez pas m'aider.

J'ai enlevé #property strict, j'ai enlevé toutes les propriétés sauf#propertylibrary.

rien ne fonctionne.

Essayez de brancher ma construction, trouvez l'erreur,

et afficher le code correct, si c'est le problème.

 
Alexey Viktorov:

Ce code fonctionnera de deux façons

1.

2.

La vidéo date de 2013, et à l'époque, ils ne pensaient même pas à la directive #property strict, donc tout fonctionnait bien.

Hélas, aucune des deux options ne fonctionne

 
Alexey Viktorov:

Ce code fonctionnera de deux façons

1.

2.

La vidéo date de 2013, et à l'époque, ils ne pensaient même pas à la directive #property strict, donc tout fonctionnait bien.

Vous n'auriez pas dû corriger le code tout de suite, l'homme ne comprend tout simplement pas les clés élémentaires du compilateur, et pour écrire un code normal vous devez connaître ces subtilités et utiliser la documentation !

Je lui ai fait remarquer que la vidéo était très ancienne, sinon il l'aurait copiée exactement comme elle était dans la vidéo et tout se serait bien passé. Mais il s'est vexé et s'est plaint, et en conséquence le post a été supprimé, alors qu'il ne va même pas se pencher sur la question !

 
Sergey Maksiutenko:

Hélas, aucune des options ne fonctionne

Affichez ce que vous avez réparé ! Le code entier !