#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);
}
//+------------------------------------------------------------------+
从结构中删除字符串,它将工作
或逐一复制元素,结构中的每个变量
或用静态数组 ugar[16]替换字符串。
从结构中删除字符串,它将工作
要么你逐个元素复制,结构中的每个变量都要复制。
或者用静态数组 ugar[16]替换字符串。
你想删除哪个字符串?
我实际上是去参考书上看了一个例子,以了解一个结构类型的变量如何被复制到另一个相同结构类型的变量中......。以及在其中声明的函数会发生什么。一个元素一个元素地复制并不是好事.........它可以拖得很久。
哪些字符串要删除?
事实上,我已经用参考书看了一个例子,了解一个结构类型的变量如何被复制到另一个相同结构类型的变量中......以及在其中声明的函数会发生什么。一个元素一个元素地复制并不是好事.........它只是变成了一个非常长的阻力。
你试过ArrayCopy 吗?
你试过ArrayCopy吗?
我们正在谈论结构化数据。你是说结构类型的变量要以数组的形式表示?:-)))也不是一种选择...结构中的一些功能,如果你单独声明,就会出现更多的混乱。
尽管使用ColorToString(testColor)更容易。
如果你想使用数据转换,请使用ServiceDesk。你提到的错误也出现在MT5的MetaEditor中
要删除哪个字符串?
事实上,我已经用参考书看了一个例子,了解一个结构类型的变量如何被复制到另一个相同结构类型的变量中......以及在其中声明的函数会发生什么。一个元素一个元素地复制并不是好事.........这是个很长的拖累。
是的,对不起,我误读了这个建议...
在我的印象中,现在已经引入了一个新的联盟 类型,你应该做这样的事情。
下午好,请说明为什么没有显示正确的信息。
你好,请你告诉我为什么它不能提供正确的信息?
你在哪里看到了不正确的信息?
还有,请正确插入代码(我在你的帖子中纠正了)。
发布在红色矩形中。
我从代码中得到的,对不起--我将来会考虑到这一点的。
负值显示不正确。这可能是由于双数类型的 原因。
让我澄清一个问题--如何使负值正确显示,以及它是否可以像正值一样被规范化(正确显示)。
我从代码中得到的,对不起--我将来会考虑到这一点的。
负值显示不正确,一定是由于双数类型 的原因。
我将澄清这个问题--如何使负值正确显示,以及是否可以像正值一样规范化(正确显示)。
当我还是个孩子的时候,当我涉足计算器的时候,我曾经得到过同样的E。在我开始编程后,我想起了我的计算器,一切都恢复了正常。
如果你想看到字符串中的数字,请尝试将其转换为字符串。