Hatalar, hatalar, sorular - sayfa 2761
![MQL5 - MetaTrader 5 müşteri terminalinde yerleşik ticaret stratejileri dili](https://c.mql5.com/i/registerlandings/logo-2.png)
Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
0xFF muhtemelen derleyiciyi 4 bayta çevirir.
hayır, ancak doğru şekilde başlatılıyor
İyi günler, sorun nasıl çözülür:
Optimize ederken bir hata çıkıyor:
2020.05.31 15:05:32.738 çekirdek 7 genetik geçiş (0, 53), 0:00:00.153'te "OnTick işlevinde (sıfır bölme, Experts\e1.ex5, dosya e1.mq5, satır 826, sütun 73) kritik çalışma zamanı hatası 503" hatasıyla test edildi
double Mix1 = NormalizeDouble((MathAbs(ZExtLevel[0] - ZExtLevel[1])), 2);
double Mix2 = NormalizeDouble((MathAbs(ZExtLevel[1] - ZExtLevel[2])), 2);
double Mix = NormalizeDouble((Mix1/Mix2),2);
Nerelerdeydin:
1) ondalık basamak sayısını azaltmak için Mix1 ve Mix2'yi çarpar;
2) normalleştirme sırasında karakter sayısını değiştirdi;
3) Tüm ZExtLevel, 0 içermediklerini kontrol etti.
hayır, ancak doğru şekilde başlatılıyor
Neden emin değilsin? Varsayılan olarak, bir tamsayı temsil eder. sizeof bunu söylüyor
Neden emin değilsin? Varsayılan olarak, bir tamsayı temsil eder. sizeof bunu söylüyor
uint, daha doğrusu.
Neden emin değilsin? Varsayılan olarak, bir tamsayı temsil eder. sizeof bunu söylüyor
ayrıca uyarılar olmadan çalışır?
karşılık gelen bir ArrayInitialize imzası olduğundan
ve imzasız bir uchar için bilinmeyen bir nedenden dolayı ArrayInitialize() yapmadılar
ayrıca uyarılar olmadan çalışır?
karşılık gelen bir ArrayInitialize imzası olduğundan
ve imzasız bir uchar için bilinmeyen bir nedenden dolayı ArrayInitialize() yapmadılar
İmza ya da yokluğuyla ilgili değil. Gerçek şu ki, 4 bayt 1'e dönüştürülür, bilgi teorik olarak kaybolabilir, derleyici bu konuda uyarır.
ArrayInitialize'ı deneyin (c, (char)10000 );
ayrıca bir uyarı olacak
İmza ya da yokluğuyla ilgili değil. Gerçek şu ki, 4 bayt 1'e dönüştürülür, bilgi teorik olarak kaybolabilir, derleyici bu konuda uyarır.
ArrayInitialize (c, (char)10000 ) deneyin;
ayrıca bir uyarı olacak
Evet, bunun orijinal olduğu açık
burada soru farklı, char'ın gerçekten gerekli olduğu yer burası mı?
ve uchar'ı StringToCharArray() ve CryptEncode() içinde kullanıyorum ve yardımı gözden geçirirseniz hala
bu yüzden ArrayInitialize kullanarak bir char dizisini başlatabilirim, ancak uchar kullanamıyorum
tamam holivar asil çıktı, bir şeylerin değişeceğinden şüpheliyim;)
Not: 0xFF = 255 (1 bayt)
evet her şeyin başından beri olduğu açık
burada soru farklı, char'a gerçekten ihtiyaç duyulan yer burası mı?
StringToCharArray() ve CryptEncode() içinde uchar kullanıyorum ve yardımı gözden geçirirseniz hala
bu yüzden ArrayInitialize kullanarak bir char dizisini başlatabilirim, ancak uchar yapamıyor
tamam, asil holivar çıktı, bir şeylerin değişeceğinden şüpheliyim;)
Not: 0xFF = 255 (1 bayt)
Evet, bunun orijinal olduğu açık
burada soru farklı, char'ın gerçekten gerekli olduğu yer burası mı?
ve uchar'ı StringToCharArray() ve CryptEncode() içinde kullanıyorum ve yardımı gözden geçirirseniz hala
bu yüzden ArrayInitialize kullanarak bir char dizisini başlatabilirim, ancak bir uchar başlatamıyorum
tamam holivar asil çıktı, bir şeylerin değişeceğinden şüpheliyim;)
Not: 0xFF = 255 (1 bayt)
Neden yapamıyorsun anlamıyorum. uchar ile her şey char ile aynı şekilde çalışır.
İlk başta uyarının nedenini sordunuz, çünkü 1'de 4 bayt ve 255 değeri hiç önemli değil. ve 0 ve bir hem 1 hem de 2 ve 4 ve 8 bayt aynı olabilir)
Alain Verleyen :
kontrol:
Tamam, derleyici uyarıları olmadan çalışır
teşekkürler