или копируйте поэлементно, каждую переменную структуры или замените стринг на статический массив uchar[16];
какой именно стринг убрать?
Я собственно говоря в справочник полез примерчик подсмотреть, чтобы понять как переменную типа структуры, копировать в другую переменную типа той же структуры... И что будет с функциями которые в них объявлены. Поэлементно копировать не годится... очень уж длинная портянка получается.
Я собственно говоря в справочник полез примерчик подсмотреть, чтобы понять как переменную типа структуры, копировать в другую переменную типа той же структуры... И что будет с функциями которые в них объявлены. Поэлементно копировать не годится... очень уж длинная портянка получается.
Речь идёт о структурированных данных. Имеется ввиду переменную типа структуры представить в виде массива??? :-))) Тоже не вариант... В структуре есть функции, которые если объявлять отдельно, то путаницы будет ещё больше.
Я собственно говоря в справочник полез примерчик подсмотреть, чтобы понять как переменную типа структуры, копировать в другую переменную типа той же структуры... И что будет с функциями которые в них объявлены. Поэлементно копировать не годится... очень уж длинная портянка получается.
да, пардон недосмотрел, неправильно насоветовал...
насколько помню, сейчас ввели новый тип union, и нужно делать примерно так:
#property script_show_inputs#define red colir[0]
#define green colir[1]
#define blue colir[2]
inputcolor testColor=clrBlue;// задайте цвет для тестирования//--- структура для представления цвета в RGBunion RGB
{
color cvet;
uchar colir[4];
string toString(); // функция для получения в виде строки
};
//--- функция для вывода цвета в виде строкиstring RGB::toString(void)
{
string out="("+(string)red+":"+(string)green+":"+(string)blue+")";
return out;
}
//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+voidOnStart()
{
//--- переменная для хранения в RGB
RGB colorRGB;
colorRGB.cvet=testColor;
Print("color ",colorRGB.cvet," = ",colorRGB.toString());
//---
}
добрый день. уточните плз почему выдает некорректную информацию
//+------------------------------------------------------------------+//---- indicator buffersdouble AO[]; // массив для индикатора iAO//---- handles for indicatorsint AO_handle; // указатель на индикатор iAO//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+intOnInit()
{
//--- создание указателя на объект - индикатор iAO
AO_handle=iAO(NULL,0);
//--- если произошла ошибка при создании объекта, то выводим сообщениеif(AO_handle<0)
{
Print("Объект iAO не создан: Ошибка исполнения = ",GetLastError());
//--- принудительное завершение программыreturn(-1);
}
return(0);
}
//+------------------------------------------------------------------+//| |//+------------------------------------------------------------------+voidOnDeinit(constint reason)
{
ArrayFree(AO);
}
//+------------------------------------------------------------------+//| Expert tick function |//+------------------------------------------------------------------+voidOnTick()
{
//--- Достаточно ли количество баров для работыif(Bars(_Symbol,_Period)<10) // общее количество баров на графике меньше 10?
{
Alert("На графике меньше 10 баров, советник не будет работать!!");
return;
}
ArraySetAsSeries(AO,true);
//--- заполнение массива AO[] текущими значениями индикатора iAO//--- задаём порядок индексации массива как в таймсерии//--- если произошла ошибка, то прекращаем выполнение дальнейших операций;if(CopyBuffer(AO_handle,0,0,100,AO)<=0)return;
double AO_1=AO[1];
AO_1=NormalizeDouble(AO_1,7);
Print("AO=",AO_1);
double AO_2=AO[2];
AO_2=NormalizeDouble(AO_2,7);
Print("AO2=",AO_2);
}
//+------------------------------------------------------------------+
отрицательное значение неккорректно отображается . наверно это из-за типа double
уточню вопрос - как сделать чтобы отрицательное значение отображалось корректно и можно ли его нормализовать как и положительное ( которое корректно отобразилось)
отрицательное значение неккорректно отображается . наверно это из-за типа double
уточню вопрос - как сделать чтобы отрицательное значение отображалось корректно и можно ли его нормализовать как и положительное ( которое корректно отобразилось)
я когда в детстве баловался калькулятором, у меня такие же Ешки появлялись. После того, как я начал программировать вспомнил калькулятор, все стало на свои места.
попробуйте перевести в строку, если хочете видеть число в строке.
уберите стринг из структуры, будет работать
или копируйте поэлементно, каждую переменную структуры
или замените стринг на статический массив uchar[16];
уберите стринг из структуры, будет работать
или копируйте поэлементно, каждую переменную структуры
или замените стринг на статический массив uchar[16];
какой именно стринг убрать?
Я собственно говоря в справочник полез примерчик подсмотреть, чтобы понять как переменную типа структуры, копировать в другую переменную типа той же структуры... И что будет с функциями которые в них объявлены. Поэлементно копировать не годится... очень уж длинная портянка получается.
какой именно стринг убрать?
Я собственно говоря в справочник полез примерчик подсмотреть, чтобы понять как переменную типа структуры, копировать в другую переменную типа той же структуры... И что будет с функциями которые в них объявлены. Поэлементно копировать не годится... очень уж длинная портянка получается.
ArrayCopy пробовали?
ArrayCopy пробовали?
Речь идёт о структурированных данных. Имеется ввиду переменную типа структуры представить в виде массива??? :-))) Тоже не вариант... В структуре есть функции, которые если объявлять отдельно, то путаницы будет ещё больше.
Хотя проще использовать ColorToString(testColor)
Если Вам приведение данных - то в СервисДеск. Указанная Вами ошибка присутствует и в MT5 MetaEditor
какой именно стринг убрать?
Я собственно говоря в справочник полез примерчик подсмотреть, чтобы понять как переменную типа структуры, копировать в другую переменную типа той же структуры... И что будет с функциями которые в них объявлены. Поэлементно копировать не годится... очень уж длинная портянка получается.
да, пардон недосмотрел, неправильно насоветовал...
насколько помню, сейчас ввели новый тип union, и нужно делать примерно так:
добрый день. уточните плз почему выдает некорректную информацию
добрый день. уточните плз почему выдает некорректную информацию
А где вы увидели не корректную информацию?
И, пожалуйста, вставляйте код правильно (я исправил в вашем посте)
Обвёл красным прямоугольником:
понял по коду, сорри - на будущее учту
отрицательное значение неккорректно отображается . наверно это из-за типа double
уточню вопрос - как сделать чтобы отрицательное значение отображалось корректно и можно ли его нормализовать как и положительное ( которое корректно отобразилось)
понял по коду, сорри - на будущее учту
отрицательное значение неккорректно отображается . наверно это из-за типа double
уточню вопрос - как сделать чтобы отрицательное значение отображалось корректно и можно ли его нормализовать как и положительное ( которое корректно отобразилось)
я когда в детстве баловался калькулятором, у меня такие же Ешки появлялись. После того, как я начал программировать вспомнил калькулятор, все стало на свои места.
попробуйте перевести в строку, если хочете видеть число в строке.