포럼을 어지럽히 지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 6. - 페이지 929

 
테스트가 실행 중인 모드의 코드에서 확인할 수 있습니까?
모든 틱, 시가 또는 중단점?
 
친구를 추가할 수 없는 이유는 무엇입니까?
 
안녕하세요. 나는 가상 호스팅 을 마스터하려고하는데 모든 것이 지침에 따르고 고문이 열리지 않습니다.
 

Classical TA의 어떤 기둥이 이 그림의 저자인지 알려주실 수 있습니까?

Elder는 Fundamentals of Stock Trading에서 이 그림을 가지고 있습니다. 사실 나는 같은 그림에 관심이 있지만 CONVERGENCES와 함께라면 그런 그림이 자연에 전혀 존재한다면.


 

도와주세요, 제발. 가장 간단한 스크립트이지만 작동하지 않습니다. 이유를 이해할 수 없습니다.

 int awd1[];
void OnStart ()
  {
   for ( int i= 0 ;i<= 5 ;i++)
   {
   awd1[i]=i+ 10 ;
   }
   Alert ( "первый=" );
  }

루프는 6번 순환해야 합니다. 각 반복은 awd1 배열에 값을 할당해야 합니다. 루프가 완료되면 "first =" 항목이 있는 창이 팝업되어야 합니다. 하지만 뜨지 않습니다. 뭐가 문제 야?

 
silachara :

도와주세요, 제발. 가장 간단한 스크립트이지만 작동하지 않습니다. 이유를 이해할 수 없습니다.

 int awd1[];
void OnStart ()
  {
   for ( int i= 0 ;i<= 5 ;i++)
   {
   awd1[i]=i+ 10 ;
   }
   Alert ( "первый=" );
  }

루프는 6번 순환해야 합니다. 각 반복은 awd1 배열에 값을 할당해야 합니다. 루프가 완료되면 "first =" 항목이 있는 창이 팝업되어야 합니다. 하지만 뜨지 않습니다. 뭐가 문제 야?

이것은 또한 터미널에서 메시지를 제거하는 데 도움이 될 것입니다: array out of range in ...:

 #property strict
#define ARRAY_SIZE   6
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
  {
 int j= 0 , awd1[];
   ArrayResize (awd1,ARRAY_SIZE,ARRAY_SIZE+ 1 );
//---
   for ( int i= 0 ;i<ARRAY_SIZE;i++)
     {
      j=i+ 10 ;
       //j=j+10;//или, к примеру, такой вариант вместо строки выше, чтобы вы посмотрели, что присваиваться будет
      awd1[i]=j;
     }
   Alert ( "первый = " );
  }
//+------------------------------------------------------------------+


P./S.: 체크가 있는 옵션은 다음과 같습니다.

 #property strict
#define ARRAY_SIZE   6
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
  {
 int j= 0 , count= 0 , awd1[];
   ArrayResize (awd1,ARRAY_SIZE,ARRAY_SIZE+ 1 );
//---
   for ( int i= 0 ;i<ARRAY_SIZE;i++)
     {
      j=i+ 10 ;
       //j=j+10;//или, к примеру, такой вариант вместо строки выше, чтобы вы посмотрели, что присваиваться будет
      awd1[i]=j;
      count++;
       Print ( "count = " ,count, ", awd1[" ,i, "] = " ,awd1[i], ", j = " ,j);
     }
   Alert ( "первый = " );
  }
//+------------------------------------------------------------------+
 
silachara :
같은 값 awd1[i]가 나오지 않도록 의 코드를 약간 수정했습니다.
 
DiPach :
같은 값 awd1[i]가 나오지 않도록 의 코드를 약간 수정했습니다.

고맙습니다!

저것들. 배열은 셀 수를 지정하여 선언되어야 합니까? 이 요구 사항은 MT4에서 600번째 빌드로 전환한 후에 나타났습니까? 아니면 예전에도 그랬나요?

그리고 한 가지 더 문제: Print()의 정보가 기록된 파일을 찾을 수 없습니다. 길을 알려줘, 플리즈. 모든 MT4 디렉토리를 뒤졌지만 찾지 못했습니다.

 
silachara :

고맙습니다!

저것들. 배열은 셀 수를 지정하여 선언되어야 합니까? 이 요구 사항은 MT4에서 600번째 빌드로 전환한 후에 나타났습니까? 아니면 예전에도 그랬나요?

동적 배열 ArrayResize의 크기를 설정하는 함수는 600번째 빌드 이전에 존재 했습니다.

그래서... 업데이트된 MQL4 언어로 컴파일러가 더 엄격해졌습니다. 필요한 경우 프레젠테이션의 불완전성으로 인한 것을 포함하여 의도하지 않은 왜곡 가능성으로 다시 말하지 않고 "직접" 관심 정보를 볼 수 있습니다. 여기 . 포함하여 이전 및 업데이트된 MQL4 언어의 "컴파일러 간의 차이점 "(이 표는 이 주제의 첫 페이지, 첫 번째 게시물 끝에 있음) 또는 검색을 통해 포함됩니다. 제 기억으로는 업데이트된 MQL4 언어로 전환하는 과정에서 많은 자료가 있었습니다.

 

silachara :

그리고 한 가지 더 문제: Print()의 정보가 기록된 파일을 찾을 수 없습니다. 길을 알려줘, 플리즈. 모든 MT4 디렉토리를 뒤졌지만 찾지 못했습니다.

빠른 방법 : 터미널 탭으로 이동 " 전문가 " -> 이 탭의 필드를 마우스 오른쪽 버튼으로 클릭 -> 열리는 메뉴에서 " 열기 " 줄을 클릭합니다.

그런 다음 Print() 를 통한 출력을 포함하여 이 탭의 항목과 함께 로그 파일이 있는 폴더가 열립니다. 아래는 그림입니다(이 정보는 시각화 형식으로 저장되어 있음을 기억합니다).


추신. : 같은 방법으로 터미널의 " 로그 " 탭에서 로그 파일이 있는 컴퓨터의 폴더를 빠르게 열 수 있습니다(다른 폴더에 있음).