오류, 버그, 질문 - 페이지 1643

 
A100 :

컴파일 오류: ')' - 모든 제어 경로가 값을 반환하는 것은 아닙니다.

모든 코드 분기가 값을 반환하는 것은 아닙니다. 다음과 같이 작성해야 합니다.

 int f()
{
 int res = 0 ;
         while ( true ) //или for(;;)
        {
//много строк c return, continue, без break
                res = 0 ; break или continue
//много строк c return, continue, без break
                res = 1 ; break или continue 
        }
return (res);
}

또는 다음과 같이:

 int f()
{
         while ( true ) //или for(;;)
        {
//много строк c return, continue, без break
                 return 0 ;
//много строк c return, continue, без break
                 return 1 ;
        }
   return (значение возвращаемое по умолчанию если не выполнены предыдущее return );
}
 
Vitalii Ananev :

모든 코드 분기가 값을 반환하는 것은 아닙니다.

그에게 주어진 예에서 - 모든 것. while(true)에서 빠져나오는 것은 break 문 (그것이 가지고 있지 않음)이나 return을 통해서만 가능합니다.
 
Sergei Vladimirov :
그에게 주어진 예에서 - 모든 것. while(true)에서 빠져나오는 것은 break 문 (그것이 가지고 있지 않음)이나 return을 통해서만 가능합니다.
나는 논쟁하지 않을 것이다. 그러나 컴파일러 오류 메시지 ')' - 모든 제어 경로가 값을 반환하는 것은 아닙니다. 그렇지 않으면 말합니다.
 
Vitalii Ananev :
나는 논쟁하지 않을 것이다. 그러나 컴파일러 오류 메시지 ')' - 모든 제어 경로가 값을 반환하는 것은 아닙니다. 그렇지 않으면 말합니다.
C++에서 동일한 시도
 
A100 :
C++에서 동일한 시도

C++는 그것과 어떤 관련이 있습니까?

....

코드를 자세히 살펴보세요. 귀하의 오류를 놓쳤습니다 . return 문의 반환 값은 대괄호 안에 작성해야 합니다. return(0) 그리고 당신은 return 0을 작성했습니다.

 
Vitalii Ananev :

C++는 그것과 어떤 관련이 있습니까?

이 경우 C ++가 일종의 표준 역할을한다는 점을 감안할 때
비탈리 아나네프 :

코드를 자세히 살펴보세요. 귀하의 오류를 놓쳤습니다 . return 문의 반환 값은 대괄호 안에 작성해야 합니다. return(0) 그리고 당신은 return 0을 작성했습니다.

왜 추가 괄호를 사용합니까?
 
A100 :
이 경우 C ++가 표준으로 작동한다는 점을 감안할 때

즉, C++로 작성하지만 모두 mql로 컴파일합니까?

왜 추가 괄호를 사용합니까?

이것은 mql 언어 의 구문입니다 .

 
Vitalii Ananev :

즉, C++로 작성하지만 모두 mql로 컴파일합니까?

이것은 mql 언어 의 구문입니다 .

괄호 없이 값을 반환할 수 있습니다. 단지 시도.
 
Artyom Trishkin :
괄호 없이 값을 반환할 수 있습니다. 단지 시도.
예, 컴파일되지만 항상 괄호로 작성합니다. 이미 규칙 범주에 포함된 습관입니다.
 
Vitalii Ananev :

즉, C++로 작성하지만 모두 mql로 컴파일합니까?

이것은 mql 언어 의 구문입니다 .

먼 과거에서 우리에게 날아온 적이 있습니까? )