Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 643

 
Guten Tag, guten Tag, Leute, die über die Kompatibilität von int und datetime Typen wissen, bitte beraten. Wenn ich mich nicht irre, ist datetime eine ganze Zahl, die die Anzahl der Sekunden darstellt, die seit 0 Uhr am 1. Januar 1970 verstrichen sind. Kann ich dann den Wert von TimeCurrent() einer Integer-Variablen zuweisen und ihn dann mit einer Variablen vom Typ datetime vergleichen?
 
Андрей:
Guten Tag, können Sie mich bitte über die Kompatibilität von int und datetime Typen beraten, wenn ich mich nicht irre. Wenn ich mich nicht irre, ist datetime eine ganze Zahl, die die Anzahl der Sekunden darstellt, die seit 0 Uhr am 1. Januar 1970 verstrichen sind. Kann ich einen Wert von TimeCurrent() einer Ganzzahlvariablen zuweisen und ihn dann mit einer Variablen vom Typ datetime vergleichen?

das Datum kann doppelt so groß sein, Byte für Byte

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

Документация по MQL5: Основы языка / Типы данных / Приведение типов
Документация по MQL5: Основы языка / Типы данных / Приведение типов
  • www.mql5.com
Часто возникает необходимость преобразовать один числовой тип в другой. Не каждый числовой тип допустимо преобразовать в другой, допустимые преобразования в MQL5 показаны на схеме: Сплошные линии со стрелками обозначают преобразования, которые выполняются без потери информации. Вместо типа char может выступать тип bool (оба занимают в памяти 1...
 
Андрей:
Guten Tag, können Sie mich bitte über die Kompatibilität der Typen int und datetime informieren? Wenn ich mich nicht irre, ist datetime eine ganze Zahl, die die Anzahl der Sekunden, die von 0 Stunden des 1. Januar 1970 verstrichen ist, kann ich einen Wert von TimeCurrent() zu einer Integer-Variable zuweisen und dann vergleichen Sie es mit einem datetime Typ Variable?

Ja, das können Sie, aber es ist besser, ulong zu verwenden

 
Sergey Maksiutenko:

Leider verstehe ich es nicht...

Bitte sagen Sie es mir.

Dieser Code funktioniert auf zwei Arten

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);
}
Das Video stammt aus dem Jahr 2013, und damals wurde noch nicht an die strenge Richtlinie #property gedacht.
 
Taras Slobodyanik:

das Datum kann doppelt so viele Bytes umfassen

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

Ja, ich habe es gelesen, und da ich dort nichts über die Umwandlung von datetime in integer gesehen habe, habe ich die Frage hier gestellt. Wenn die Ganzzahl vom Typ ulong ist, hat sie dann genug Bytes, um die Zeit ohne Verlust zu hosten? Ich werde erklären, warum das so ist. Ich habe gerade ein zweidimensionales Array, das Integer-Daten speichert und ich muss ein Datum auf sie setzen.
 
Андрей:
Ja, ich habe es gelesen, und da ich dort nichts über die Umwandlung von datetime in integer gesehen habe, habe ich die Frage hier gestellt. Und sagen wir mal, wenn eine ganze Zahl vom Typ ulong ist, hat sie dann genug Bytes, um die Zeit ohne Verlust zu hosten? Ich werde erklären, warum das so ist. Ich habe gerade ein zweidimensionales Array, das Integer-Daten speichert und muss Datum hinzufügen.

datetime ist ulong

 
Sergey Maksiutenko:

Wenn Sie dieBibliothekseigenschaft#property meinen

Ich habe es überprüfen lassen...

Ohne sie lässt sich die Bibliotheksdatei nicht einmal kompilieren.
Vitaly Gorbunov:

Ich werde rauchen, damit ich nicht zu abrupt schreibe und versuche, Ihnen zu erklären, was #property strict ist.

Bemühen Sie sich nicht.

Ich verstehe, dass Sie mir nicht helfen können.

Ich habe #property strict herausgenommen, ich habe alle Eigenschaften außer#propertylibrary herausgenommen

nichts funktioniert.

Versuchen Sie, mein Konstrukt einzubauen, um den Fehler zu finden,

und posten Sie den korrekten Code, falls dies das Problem ist.

 
Alexey Viktorov:

Dieser Code funktioniert auf zwei Arten

1.

2.

Das Video stammt aus dem Jahr 2013, und damals wurde noch nicht einmal über die strikte Richtlinie #property nachgedacht, so dass alles gut funktionierte.

Leider funktioniert keine der beiden Optionen.

 
Alexey Viktorov:

Dieser Code funktioniert auf zwei Arten

1.

2.

Das Video stammt aus dem Jahr 2013, und damals wurde noch nicht einmal über die strikte Richtlinie #property nachgedacht, so dass alles gut funktionierte.

Sie hätten den Code nicht gleich korrigieren sollen, der Mann versteht einfach die elementaren Compilerschlüssel nicht, und um einen normalen Code zu schreiben, muss man diese Feinheiten kennen und die Dokumentation benutzen!

Ich wies ihn darauf hin, dass das Video sehr alt sei und alles gut geworden wäre, wenn er es genau so kopiert hätte, wie es im Video war. Aber er war beleidigt und beschwerte sich, woraufhin der Beitrag gelöscht wurde, während er sich nicht einmal darum kümmern wird!

 
Sergey Maksiutenko:

Leider funktioniert keine der Optionen

Posten Sie, was Sie repariert haben! Der gesamte Kodex!
Grund der Beschwerde: