Yeni başlayanlardan sorular MQL4 MT4 MetaTrader 4 - sayfa 22
![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
Bir diziye veri aktarırken sırayla kendisini dolduracağını kastetmiştim, yani. dizi1[] = x; hücre numarası doğrudan belirtilmezse x değeri hangi hücreye yazılır?
Numara. Tüm hücreleri aynı değerle doldurmak istiyorsanız, ArrayInitialize() öğesini kullanın .
Farklı değerler yazmanız gerekiyorsa, sırayla bir döngüde. Belirli bir hücreye yazmanız gerekiyorsa, hücrenin adresini belirtin.
Numara. Tüm hücreleri aynı değerle doldurmak istiyorsanız, ArrayInitialize() öğesini kullanın .
Farklı değerler yazmanız gerekiyorsa, sırayla bir döngüde. Belirli bir hücreye yazmanız gerekiyorsa, hücrenin adresini belirtin.
Teşekkürler,
Başka bir soru şudur: ArrayCopy aracılığıyla, öncekindeki dolu hücre sayısına eşit boyutta yeni bir dizi oluşturabilir miyim? Yoksa önce ikinci diziyi oluşturmak ve sonra kopyalamak mı gerekiyor?
void & dst_array[], // куда копируем
const void & src_array[], // откуда копируем
int dst_start= 0 , // с какого индекса пишем в приемник
int src_start= 0 , // с какого индекса копируем из источника
int count= WHOLE_ARRAY // сколько элементов
);
Teşekkürler,
Başka bir soru şudur: ArrayCopy aracılığıyla, öncekindeki dolu hücre sayısına eşit boyutta yeni bir dizi oluşturabilir miyim? Yoksa önce ikinci diziyi oluşturmak ve sonra kopyalamak mı gerekiyor?
void & dst_array[], // куда копируем
const void & src_array[], // откуда копируем
int dst_start= 0 , // с какого индекса пишем в приемник
int src_start= 0 , // с какого индекса копируем из источника
int count= WHOLE_ARRAY // сколько элементов
);
Tabii ki önce oluşturun.
if ( Spread >= 0 ) ExtSpread [x] = Spread;
if ( TimeCurrent () - iTime ( NULL , 0 , 0 ) >= 60 ){
int Spread2[x];
ArrayCopy ( Spread2[],ExtSpread[], 0 , 0 , WHOLE_ARRAY );}
x=x+ 1 ;
if (x > 1000 ) x = 0 ;
Bunun gibi, ExtSpread[] dizisine Spread değerini yazarım ve dakika çubuğunun sonunda onu başka bir diziye aktarırım - teoride bir sonraki çubuğa kadar hayatta kalması gerekir.
ExtSpread boyutu[1000]
Yani ve böyle bir soru, dizideki numaralandırma sıfırdan başlıyor ve sonra 1000 boyutunda son hücresi 999 mu olacak?
O zaman doğru olacaktır: x++ ve if ( x > 999 ) x=0;
if ( Spread >= 0 ) ExtSpread [x] = Spread;
if ( TimeCurrent () - iTime ( NULL , 0 , 0 ) >= 60 ){
int Spread2[x];
ArrayCopy ( Spread2[],ExtSpread[], 0 , 0 , WHOLE_ARRAY );}
x=x+ 1 ;
if (x > 1000 ) x = 0 ;
Bunun gibi, ExtSpread[] dizisine Spread değerini yazarım ve dakika çubuğunun sonunda onu başka bir diziye aktarırım - teoride bir sonraki çubuğa kadar hayatta kalması gerekir.
ExtSpread boyutu[1000]
Yani ve böyle bir soru, dizideki numaralandırma sıfırdan başlıyor ve sonra 1000 boyutunda son hücresi 999 mu olacak?
O zaman doğru olacaktır: x++ ve if ( x > 999 ) x=0;
if ( Spread >= 0 ) ExtSpread [x] = Spread;
if ( TimeCurrent () - iTime ( NULL , 0 , 0 ) >= 60 ){
int Spread2[]; ArrayInitialize (Spread2, EMPTY_VALUE ); ArrayResize ( Spread2,x, 0 );
ArrayCopy ( Spread2,ExtSpread, 0 , 0 , WHOLE_ARRAY );}
x=x+ 1 ;
if (x > 999 ) x = 0 ;
Etkilenmiş:
scomoroh , 2016.12.04 18:58
Derleme sırasında bir hata oluşur. Sorun ne? Karar vermeme yardım et!Etkilenmiş:
scomoroh , 2016.12.04 18:58
Derleme sırasında bir hata oluşur. Sorun ne? Karar vermeme yardım et!ArrayInitialize (max, 0 ) => ArrayInitialize (dizi, 0 );
for ( int a= 1 ;a<=pr;a++) => for ( int a= 1 ;a<pr;a++)
Çok, çok uygun olmayan kod, başlangıçta terminali birkaç dakika askıda tutar ve daha sonra sert bir şekilde yavaşlar ve birkaç çizelgede başlatırsanız, genel olarak![](https://c.mql5.com/3/111/horror.gif)
ArrayInitialize (max, 0 ) => ArrayInitialize (dizi, 0 );
for ( int a= 1 ;a<=pr;a++) => for ( int a= 1 ;a<pr;a++)
Çok, çok uygun olmayan kod, başlangıçta terminali birkaç dakika askıda tutar ve daha sonra sert bir şekilde yavaşlar ve birkaç çizelgede başlatırsanız, genel olarak