Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 458

 

Können Sie mir sagen, wie man aus Text Zahlen macht?

Es gibt einen Text string="OpenOrder_Part=1";

Ich muss die Ziffer 1 abtrennen und sie in "int" umwandeln.

 
-Aleks-:

Können Sie mir sagen, wie man aus Text Zahlen macht?

Es gibt einen Text string="OpenOrder_Part=1";

Ich muss die Ziffer 1 abtrennen und sie in "int" umwandeln.

Suchen Sie nach Zeichen nach "=" und StringToInteger()
 
-Aleks-:

Können Sie mir sagen, wie man aus Text Zahlen macht?

Es gibt einen Text string="OpenOrder_Part=1";

Ich muss die Ziffer 1 abtrennen und sie in "int" umwandeln.

Auf einen Blick - Teilen Sie die Zeichenfolge durch das Trennzeichen "=". Die Funktion StringSplit(). Und dann StringToInteger().
 
Artyom Trishkin:
Suchen Sie nach Zeichen nach "=" und StringToInteger()

Ich danke Ihnen.

Seltsamerweise wurde StringToInteger() nicht benötigt - die Zahlen addieren sich auch ohne diese Funktion.


Tapochun:
Auf einen Blick, um eine Zeichenkette mit dem Trennzeichen "=" aufzuteilen. Die Funktion StringSplit(). Und dann StringToInteger().

Ich danke Ihnen! Es hat gut funktioniert, aber jetzt kann ich die Zeichenfolge nicht richtig kodieren - Text mit Ziffern kombinieren. Und es ist nicht klar, was ich tun soll, wenn ich nicht weiß, wo die Ziffer ist...

Ich schreibe folgendermaßen

int CountPendingOrder_OS=1;

string comm="CountPendingOrder_OS_"+CountPendingOrder_OS;

Was ist los?
 
-Aleks-:

Ich danke Ihnen.

Seltsamerweise wurde StringToInteger() nicht benötigt - die Zahlen addieren sich auch ohne diese Funktion.


Ich danke Ihnen! Es hat gut funktioniert, aber jetzt kann ich die Zeichenfolge nicht richtig kodieren - den Text mit den Zahlen kombinieren. Und es ist nicht klar, wie ich es machen soll, wenn ich nicht weiß, wo die Ziffer ist...

Ich schreibe es so

int CountPendingOrder_OS=1;

string comm="CountPendingOrder_OS_"+CountPendingOrder_OS;

Was ist los?

Aus diesem Grund benötigte ich StringToInteger(). Aber es könnte einfacher sein.

string comm = ""+(string)CountPendingOrder_OS.

Sie versuchen, den String-Teil mit dem Integer-Teil zu verketten. Aus diesem Grund liegt ein Fehler vor. Sie sollten den Integer-Teil in den String-Teil umwandeln. In diesem Fall müssen Sie eine explizite Konvertierung vornehmen.

 
Tapochun:

Aus diesem Grund wurde die Funktion StringToInteger() benötigt. Aber es könnte einfacher sein.

string comm = ""+(string)CountPendingOrder_OS.

Sie versuchen, den String-Teil mit dem Integer-Teil zu verbinden. Aus diesem Grund liegt ein Fehler vor. Sie sollten den Integer-Teil in den String-Teil umwandeln. In diesem Fall müssen Sie eine explizite Konvertierung vornehmen.

Danke, aber es ist frustrierend, dass IntegerToString() nicht mit einer numerischen Null umgehen kann - es ersetzt sie durch "Platzhalter"!
 
-Aleks-:
Danke, aber es ist frustrierend, dass IntegerToString() nicht mit einer numerischen Null umgehen kann - es ersetzt sie durch einen "Platzhalter"!
Dann verwenden Sie die explizite Konvertierung.
 
Tapochun:
Dann verwenden Sie die explizite Konvertierung.

Wie ist das? :) Ich habe bis jetzt eine Nullkontrolle durchgeführt...


Ich habe auch einen Fehler entdeckt, aber ich weiß nicht, wie ich ihn interpretieren soll...

2015.10.15 14:54:46.709 2011.06.29 10:50 Testdurchlauf gestoppt aufgrund eines kritischen Fehlers im EA

2015.10.15 14:54:46.709 2011.06.29 10:50 Zugriffsverletzung beim Lesen von 0x00000006 in 'C:\Users\<...>\Kamikadze_MA-9.ex4'

 
-Aleks-:

...

Ich habe auch einen Fehler entdeckt, aber ich weiß nicht, wie ich ihn interpretieren soll...

2015.10.15 14:54:46.709 2011.06.29 10:50 Testdurchlauf gestoppt aufgrund eines kritischen Fehlers im EA

2015.10.15 14:54:46.709 2011.06.29 10:50 Zugriffsverletzung beim Lesen von 0x00000006 in 'C:\Users\<...>\Kamikadze_MA-9.ex4'

Mit diesem Fehler in servicedesk.
 
-Aleks-:

Wie ist das? :) Ich habe bis jetzt eine Nullkontrolle durchgeführt...


Ich habe auch einen Fehler entdeckt, aber ich weiß nicht, wie ich ihn interpretieren soll...

2015.10.15 14:54:46.709 2011.06.29 10:50 Testdurchlauf gestoppt aufgrund eines kritischen Fehlers im EA

2015.10.15 14:54:46.709 2011.06.29 10:50 Zugriffsverletzung beim Lesen von 0x00000006 in 'C:\Users\<...>\Kamikadze_MA-9.ex4'

Ich habe es oben beschrieben: (string) vor dem Variablennamen.

MT5?

Grund der Beschwerde: