Где ошибся?

 

Добрый день!

Есть код:

input uint OrdCount = 630; //
uint ord_count = OrdCount; 
//+------------------------------------------------------------------+
// Expert Process orders                                             |
//+------------------------------------------------------------------+
void COrder::Process()
{
  double a_count;
 
  if ( GlobalVariableGet( "trans_count", a_count ) )
  {
    if ( ( ticket == 0 ) && ( uint( a_count ) < ord_count ) )
    {
      Print( "Счётчик = ", a_count );
    }
  }

 2014.10.09 19:58:33.927 trader (LKOH-12.14,H1) Счётчик = 634.0

 


 
Mikalas:

Добрый день!

Есть код:

 2014.10.09 19:58:33.927 trader (LKOH-12.14,H1) Счётчик = 634

 


double a_count;   uint ord_count
double  и uint
 
pako:
double  и uint

Извините, но нужно смотреть внимательно....

uint( a_count ) 

 

Вот эту штуку тоже стоит распечатать

ord_count
 
TheXpert:

Вот эту штуку тоже стоит распечатать

Только что проверил - штука = 630

 

P/S эта ошибка "плавающая" то есть, то нет :( 

 
Mikalas:

Только что проверил - штука = 630

 

P/S эта ошибка "плавающая" то есть, то нет :( 

попробуйте вместо uint ,  long

 

GlobalVariableSet  только  double

 uint 4 байта

  long 8 байт

double 8 байт 

 
pako:

попробуйте вместо uint ,  long

 

GlobalVariableSet  только  double

 uint 4 байта

  long 8 байт

double 8 байт 

Спассибо.
 
Дайте 
Print  (a_count, ", ", uint( a_count ),", ", ord_count);
Причина обращения: