묻고 답하고
c 언어 공부중 궁금한게 있어 급질 해봅니다.
return 0;
과
return (0);
차이가 무엇인가요?
좋은게 좋은거다.
2012.11.24 11:53:21 (*.116.231.24)
제가 DOS 시절 Turbo-C 2.0 부터 시작했는데,
return(0); 이런 표현은 처음보는데요...
다시 생각해보면 return (a+b+c); 이런 표현은 쓰는군요. ^^
2012.11.24 20:20:54 (*.229.76.224)
보통 return 값에 수식까지 포함해서 처리 하는 경우가 많이 있습니다.
return ( A + B)
이런식으로요...
이러한 경우가 빈번하다보니 습관적으로 ()를 붙이는 경우가 종종 있기는 합니다.
하지만 저도 ProJect@K님의 의견이 더 신빙성 있어 보이긴 합니다^^
2012.11.25 00:50:16 (*.212.48.220)
더 깊이 들어갈 필요가 별로 없는 것 같긴 하지만 그냥 심심풀이로 알아두시라고 설명드리면
원래 함수를 정의할 때 앞에 retrun 값의 유형이 어떤 건지 명기하게 되어 있죠
예를 들면 선언 자체는 아래와 같이 되고
int add(int a, int b)
실제 구문에서는 아래와 같다고 가정하면
c = add(a, b)
결국 add 함수를 호출하고 나서 return 값이 int 유형으로 변환되어 c 변수로 들어가는거니
c = (int)(리턴값)
이렇게 되는 거죠. 즉, retrun에서 괄호를 붙이던 아니던 (int)가 붙기 때문에 컴파일러가 파싱을 할 때는
자동으로 (int)(리턴값)의 형태로 뒤에도 괄호가 붙게 되어 있습니다.
그래서 return 뒤에 괄호를 쓰던 안 쓰던 별로 상관은 없지요.
하도 오래되서 기억이 가물가물한데 대충 이렇습니다 ㅋ
작성된지 6개월이 지난 글에는 새 코멘트를 달 수 없습니다.
차이없는걸로 알고있어요..
코딩하다가 괄호는 치냐마냐 어따가 넣냐는,,버릇이나 습관인게 많아요...
자신이 보기 편하라고 넣는것도 있고,,
return 0;
과
return(0); 둘다 해봐서 차이없으면 그냥 습관입니다 ㅋㅋ