검수요청.png검수요청.png

"리턴"의 두 판 사이의 차이

해시넷
이동: 둘러보기, 검색
(새 문서: 리턴이란 현재 실행 중인 메소드(Method)를 종료하고 결과값을 되돌려주라는 명령어이다. 결과값을 리턴값(return value)이라고도 한다. return문...)
 
 
(다른 사용자 한 명의 중간 판 10개는 보이지 않습니다)
1번째 줄: 1번째 줄:
리턴이란 현재 실행 중인 메소드(Method)를 종료하고 결과값을 되돌려주라는 명령어이다. 결과값을 리턴값(return value)이라고도 한다. return문이 결과값을 반환하는 반면, break문은 어떤 결과값도 반환하지 않는다.
+
'''리턴'''(return)이란 현재 실행 중인 [[메소드]](Method)를 종료하고 결과값을 되돌려주라는 [[명령어]]이다. 결과값을 '''리턴값'''(return value)이라고도 한다. return문이 결과값을 반환하는 반면, [[브레이크]](break)문은 어떤 결과값도 반환하지 않는다.
  
 
== 개요 ==
 
== 개요 ==
 +
return 문은 함수의 실행을 종료하고 호출한 함수로 제어를 반환한다. 호출 바로 다음 지점의 호출 함수에서 실행을 다시 시작한다. return 문은 호출하는 함수에 값을 반환할 수도 있다.<ref><[https://akohongbigcenter.tistory.com/248 return 문이란?]><<i!kohing>>,2019-11-27</ref>
  
 
== 특징 ==
 
== 특징 ==
 +
=== break문과 return문의 차이 ===
 +
break문과 return문의 기능을 서로 헷갈려 하는 경우가 있는데 둘의 기능은 확연히 다르다.
 +
 +
break 문 특징
 +
1. 가장 가까이에 있는 하나의 방복문을 벗어난다.
 +
break문이 실행되면 Loop가 전부 끝나지 않았음에도 해당 반복문을 즉시 탈출한다.
 +
 +
return 문 특징
 +
1. 쓰여진 해당 함수에서의 탈출을 의미한다.
 +
예를 들어, return문 실행 시 '반복문을 포함하는 메서드' 자체를 종료시킨다.
 +
 +
2. 메서드 내에서 return이 실행되면 뒷줄에 코드가 더 있더라도 값을 반환 후 종료시킨다.
 +
 +
3. 메서드의 출력값은 return 명령어로만 가능하다.
 +
 +
4. 메서드의 리턴자료형이 void인 경우에는 return문이 필요없다.
 +
 +
5. return;문만을 써서 메소드를 빠져나가는 방법은 리턴 자료형이 void형인 메서드에만 해당된다.
 +
리턴 자료형이 명시되어 있는 메서드에서는 return;문만을 작성하면 컴파일 오류가 발생한다.<ref><[https://hoon93.tistory.com/8 break와 return의 차이 및 특징 정리]><<천방지축 개발노트>>,2019-02-15</ref>
  
 
== 활용 ==
 
== 활용 ==
 +
=== return 문 문법 ===
 +
 +
return 수식;
 +
 +
* return 문은 함수 본문 안에서만 나타날 수 있다.
 +
* return 문이 실행되면 수식이 평가되고 해당 함수의 값으로 반환된다.
 +
* return 문이 실행되면 함수 본문에 다른 구문이 남아 있더라도 해당 함수의 실행이 중단된다.
 +
 +
=== return 문 예제 ===
 +
 +
function add(x,y){return x+y}
 +
console.log(add(10,5));    // 15
 +
 +
함수가 수식이 지정되지 않은 return 문을 실행하거나 함수 본문의 끝에 다다라서 반환하게 되면 함수 호출 수식의 값은 undefined가 된다.<ref><[http://codingnuri.com/javascript-tutorial/javascript-return-statement.html return문]><<javascript-tutorial>></ref>
 +
 +
function add(x,y){x+y}
 +
console.log(add(10,5));    // undefined
 +
 +
=== 다양한 언어의 return ===
 +
 +
:{|class=wikitable width=750 style="background-color:white"
 +
 +
!align=center style="background-color:ashgray"|언어
 +
!align=center style="background-color:ashgray"|Return 문<ref name='변수 예시'>〈[https://ko.wikipedia.org/wiki/Return_%EB%AC%B8 Return 문]〉,《위키백과》</ref>
 +
|-
 +
|align=center|에이다, Bash, C, C++, 자바, PHP, C#, 자바스크립트, D
 +
|align=center| return value;
 +
|-
 +
|align=center|베이직
 +
|align=center| RETURN
 +
|-
 +
|align=center|리스프
 +
|align=center| (return value)
 +
|-
 +
|align=center|펄, 루비
 +
|align=center|return @values;<br>
 +
return $value;<br>
 +
return;<br>
 +
또는 컨텍스트 반환 시퀀스
 +
|-
 +
|align=center|파이썬
 +
|align=center|return value
 +
|-
 +
|align=center|스몰토크
 +
|align=center|  ^ value
 +
|-
 +
|align=center|비주얼 베이직 닷넷
 +
|align=center|Return value
 +
|-
 +
|align=center|윈도우 파워셸
 +
|align=center|return value;
 +
|-
 +
|align=center|x86 어셈블리
 +
|align=center|
 +
ret
 +
|}
  
 
{{각주}}
 
{{각주}}
  
 
== 참고자료 ==
 
== 참고자료 ==
 +
* <[https://akohongbigcenter.tistory.com/248 return 문(리턴문)]><<i!kohing>>, 2019-11-27
 +
* <[https://hoon93.tistory.com/8 break와 return의 차이 및 특징 정리]><<천방지축 개발노트>>, 2019-02-15
 +
* <[http://codingnuri.com/javascript-tutorial/javascript-return-statement.html return 문]><<javascript-tutorial>>
 +
* <[https://ko.wikipedia.org/wiki/Return_%EB%AC%B8 Return 문]><<위키백과>>
 +
 +
== 같이 보기 ==
 +
* [[브레이크]]
 +
* [[반복문]]
 +
* [[조건문]]
 +
* [[객체지향 프로그래밍]]
 +
* [[루프]]
 +
* [[메소드]]
  
== 같이보기 ==
+
{{프로그래밍|검토 필요}}

2020년 8월 15일 (토) 00:53 기준 최신판

리턴(return)이란 현재 실행 중인 메소드(Method)를 종료하고 결과값을 되돌려주라는 명령어이다. 결과값을 리턴값(return value)이라고도 한다. return문이 결과값을 반환하는 반면, 브레이크(break)문은 어떤 결과값도 반환하지 않는다.

개요[편집]

return 문은 함수의 실행을 종료하고 호출한 함수로 제어를 반환한다. 호출 바로 다음 지점의 호출 함수에서 실행을 다시 시작한다. return 문은 호출하는 함수에 값을 반환할 수도 있다.[1]

특징[편집]

break문과 return문의 차이[편집]

break문과 return문의 기능을 서로 헷갈려 하는 경우가 있는데 둘의 기능은 확연히 다르다.

break 문 특징 1. 가장 가까이에 있는 하나의 방복문을 벗어난다. break문이 실행되면 Loop가 전부 끝나지 않았음에도 해당 반복문을 즉시 탈출한다.

return 문 특징 1. 쓰여진 해당 함수에서의 탈출을 의미한다. 예를 들어, return문 실행 시 '반복문을 포함하는 메서드' 자체를 종료시킨다.

2. 메서드 내에서 return이 실행되면 뒷줄에 코드가 더 있더라도 값을 반환 후 종료시킨다.

3. 메서드의 출력값은 return 명령어로만 가능하다.

4. 메서드의 리턴자료형이 void인 경우에는 return문이 필요없다.

5. return;문만을 써서 메소드를 빠져나가는 방법은 리턴 자료형이 void형인 메서드에만 해당된다. 리턴 자료형이 명시되어 있는 메서드에서는 return;문만을 작성하면 컴파일 오류가 발생한다.[2]

활용[편집]

return 문 문법[편집]

return 수식;
  • return 문은 함수 본문 안에서만 나타날 수 있다.
  • return 문이 실행되면 수식이 평가되고 해당 함수의 값으로 반환된다.
  • return 문이 실행되면 함수 본문에 다른 구문이 남아 있더라도 해당 함수의 실행이 중단된다.

return 문 예제[편집]

function add(x,y){return x+y}
console.log(add(10,5));     // 15

함수가 수식이 지정되지 않은 return 문을 실행하거나 함수 본문의 끝에 다다라서 반환하게 되면 함수 호출 수식의 값은 undefined가 된다.[3]

function add(x,y){x+y}
console.log(add(10,5));     // undefined

다양한 언어의 return[편집]

언어 Return 문[4]
에이다, Bash, C, C++, 자바, PHP, C#, 자바스크립트, D return value;
베이직 RETURN
리스프 (return value)
펄, 루비 return @values;

return $value;
return;
또는 컨텍스트 반환 시퀀스

파이썬 return value
스몰토크 ^ value
비주얼 베이직 닷넷 Return value
윈도우 파워셸 return value;
x86 어셈블리

ret

각주[편집]

  1. <return 문이란?><<i!kohing>>,2019-11-27
  2. <break와 return의 차이 및 특징 정리><<천방지축 개발노트>>,2019-02-15
  3. <return문><<javascript-tutorial>>
  4. Return 문〉,《위키백과》

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 리턴 문서는 프로그래밍에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.