首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么需要在mql4中使用数组函数

为什么需要在mql4中使用数组函数
EN

Stack Overflow用户
提问于 2019-10-23 16:56:03
回答 1查看 195关注 0票数 0

我真的对mql4 array function.In mql4 reference不满意,他们无法解释为什么需要使用这个函数。我为什么需要使用arrayinitialize函数的示例

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-23 19:41:13

当你声明一些数组时,它可能包含一些垃圾。最有可能的是你会有默认值,比如0NULL,但垃圾也可能留在那里。通过使用‘ArrayInitialize()’函数,您可以确保数组中的所有值都是您放在那里的值。

代码语言:javascript
复制
string arr2str(const int &array[])//fn to print array, ugly, ends with ,|
  {
   string result="|";
   for(int i=0;i<ArraySize(array);i++)
     {
      result+=(string)i+"="+(string)array[i]+", ";
     }
   return result+"|";
  }
void OnTick()
  {

   int array[8];
   printf("1: %d. %s",ArraySize(array),arr2str(array));
   //receive: 1: 8. |0=0, 1=0, 2=0, 3=0, 4=1995110657, 5=146315416, 6=1, 7=85975080, |
   int result=ArrayInitialize(array,7);
   printf("2: %d %d. %s",result,ArraySize(array),arr2str(array));
   //receive: 2: 8 8. |0=7, 1=7, 2=7, 3=7, 4=7, 5=7, 6=7, 7=7, |

   ExpertRemove();//to stop the test
  }

如您所见,第一个数组输出(1:)有一些奇怪的数据。初始化后,它没有问题(2:) -所有的7都是7,因为我在函数中放了7作为第二个参数,在你的代码中很可能是0而不是7。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58519069

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档