C언어의 시작, HELLO, WORLD 출력하기

이 문서에서 핵심이 되는 단어는 “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, “OPTIONAL” 입니다. 이것은 RFC 2119 에서 정의한 뜻과 내용을 기준으로 합니다.
The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in RFC 2119.

C언어는 프로그래밍 언어의 가장 기초에 서 있습니다. 그만큼 많은 사람이 배우고 다루어야 할 언어이기도 합니다. C언어만의 특징에 대해서는 따로 다루지 않겠습니다. 단지 C언어를 단순히 코딩한 시점에서는 실행이 불가능하며, 컴파일러를 통한 코딩이 이루어져야만 사용이 가능하다는 점을 짚어 두겠습니다.

시작

Hello, world를 출력하는 C언어 코드입니다.

C
#include <stdio.h>
int main()
{
  printf("Hello, world");
  return 0;
}

코드 설명

#include <stdio.h>는 C언어에서 제공하는 헤더 파일 중 stdio.h 파일을 소스 코드에서 사용한다는 의미입니다. 헤더 파일을 포함함으로써 C언어의 기본 함수 및 문법을 코드에서 사용할 수 있습니다. 

int main()은 C언어의 시작으로, 처음과 마지막을 중괄호({ … })로 감싸서 사용합니다.

int main()과 void main(), 두 가지의 차이점

상단에 작성된 코드는 int main() 으로 시작하며 return 0; 의 반환값을 지정합니다. 그러나 void main() 은 함수 제일 마지막에 반환값을 지정하지 않습니다.

C
#include <stdio.h>
void main()
{
  printf("Hello, world");
}

이전에 작성된 문서에는 void main() 으로 작성된 코드 또한 존재할 것입니다 하지만 void main() 은 비표준 문법으로 권장하지 않으며(SHOULD NOT), 에러 없이 컴파일에 성공했다 하더라도 컴파일러 내부에는 int main() 으로 처리됩니다.

만약 void main() 으로 시작하는 코드를 보았다면 int main() 으로 변경하고, 반드시(MUST) 프로그램 코드가 끝나는 구간에 return 0; 코드를 삽입하여 컴파일한 자신의 C언어 프로그램이 정상적으로 종료되었다는 사실을 운영체제에 알려야 합니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다