22019, 1/1101 회원가입  로그인  
   empty120
   c언어 질문이여

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=22819 [복사]


int main(void)

이 문장에서요 void 가 꼭 쓰여야 하나여?

그냥 int main( )

이렇고 마는 사람도 있던데 그럼 왜 void 쓰는 건가요?

도데체 void 뭔가요 이것도 하나의 명령문 인가요?

  Hit : 5409     Date : 2012/01/27 10:22



    
BLu2Scr22n 흠 .. 제가 학원에서 배운걸로는 void main () { 하고 마지막에 }로 닫는것으로 배웟습니다만.. 2012/01/27  
effortkim 1. main함수의 전달인자 부분에 void가 오면 main함수를 호출하는 시스템에게 'main함수 호출할 때 아무것도 주지 마.' 라고 하는것과 같습니다. 빈 칸으로 두는것과 같은 효과를 나타내죠. 표기상의 차이일 뿐, 동일하다고 보시면 됩니다.
2. void는 명령문(statement)는 아니고, '타입이 없다' 라는 뜻의 예약어(keyword)로 생각하시면 됩니다.
3. C언어 기본서를 여러 권 보다보면, int main()으로 표기하는 한편 void main()으로 표기하는 경우도 있습니다. 전자의 경우 main함수를 끝낼 때 값을 반환하겠다는 뜻이고, 후자의 경우 반환하지 않겠다는 뜻이죠. 만일 main함수를 호출하는 당사자에게 어떤 알림을 줄 때 반환값을 이용하곤 합니다. 실제로, main함수의 반환값이 0이면 에러가 없다는 뜻이고, 0이 아닌값이면 비정상적인 작업이 이루어졌다고 받아들인다고 합니다.(자세한것은 아닙니다.) 현재 표준에서는 int형으로 반환하기를 '권장'합니다만, 아직도 많은 서적에서 void main() 표기를 하고있는 것으로 알고 있습니다.
2012/01/27  
supershop 개발자 취향입니다 ;) 2012/01/28  
Cruelant void 뜻자체가 빈공간인데 말이죠 2012/01/28  
kjwon15 void 쓰나 마나 똑같습니다.
어차피 컴파일러는 동일하게 처리합니다.
2012/01/28  
INC0GNIT0 void 안쓰면 컴파일러가 알아서 void로 처리 합니다. 2012/01/28  
헬렌킬러 ()이나 (void)나 빈공간이라는 의미라서 상관은 없어요. 2012/01/31