2. C의 문법

2022. 2. 16. 12:10C

#include <stdio.h>

int main() 
{
  printf("Hello World!");
  return 0;
}
Hello, World!

위의 코드는 저번 시간에 작성하고 끝낸 것입니다. 

이제 이 코드를 줄 별로 나누어 C 언어의 문법에 대해 알아보겠습니다. 

코드 설명

1번째 줄: stdio.h는 STanDardInputOutput의 약자로, C언어의 기본적인 입출력 구문을 사용할 수 있게 해주는 헤더 파일 (Header File)입니다. 헤더 파일이란, 미리 함수를 정의해 놓은 C언어 파일을 다른 C언어 파일에 쉽게 추가할 수 있도록 만들어 놓은 함수의 집합체 파일이라고 보시면 됩니다. 

이 1번째 줄은 없으면 기본적인 입출력이 불가능하기 때문에 C 프로그램에서 항상 등장하는 구문입니다. 

2번째 줄: 아무것도 없는 공백입니다. 거의 모든 언어는 공백을 무시하기 때문에 있고 없고의 상관이 없습니다. 하지만 코드의 가독성을 높히기 위해 사용합니다. 

3번째 줄: C 프로그램에서 항상 등장하는 또 다른 구문으로, main()입니다. 여기서 main()은 정수형(int)를 반환하는 함수입니다. 중괄호 { } 안에 있는 모든 코드가 실행됩니다. 

4번째 줄: printf()는 괄호 안에 있는 값을 출력하는 함수입니다. 이 경우, Hello, World! 라는 문자열을 출력합니다. 

모든 C언어 구문은 세미콜론 ; 로 끝납니다. 구문의 끝에 ; 를 쓰지 않은 경우, 오류가 납니다. 
; 는 코드 하나의 끝을 선언하는 문자이므로, main() 안의 프로그램을 다음과 같이 쓸 수도 있습니다:
int main(){printf("Hello World!");return 0;}​
Hello, World!


하지만 가독성을 위해서 여러 줄로 쓰는 것입니다. 

 

5번째 줄: return 0은 main() 함수의 정수형 값을 반환하는 함수입니다. 

6번째 줄: 함수를 정의할 때는 항상 '{' 로 시작해서 '}' 로 끝납니다. 

 

여기서 우리는 한 가지 사실을 알 수 있습니다. 

C 프로그램은 다음과 같이 전개됩니다. 

#include <헤더파일.h>

int main()
{
	코드
    return 0;
}
main() 함수를 선언하는 방법은 여러 가지 입니다. 
어차피 반환형이 필요 없을 것이므로 int main() 대신 void main() 을 사용하는 분들, main()의 괄호 사이에 아무것도 없다는 뜻인 void를 적는 분들도 있습니다. 
모두 개인 취향입니다. 
다만, 이 강의에서는 가장 많이 사용되는 int main() { } 형식으로 진행하겠습니다. 

주석 (Comments)

주석은 코드 설명, 코드의 가독성 향상, 한 코드를 테스트 할 때 다른 코드의 실행을 방지 하는 등의 역할을 가지고 있습니다. 쉽게 설명하면 주석은 그냥 메모입니다. 

한 줄 주석

한 줄만 주석처리하고 싶으면 // 를 쓰면 됩니다. 

다음은 한 줄 주석을 사용하는 예시입니다:

//안녕, 세계!
printf("Hello, World!");
Hello, World!
printf("Hello, World!"); //안녕 세계! 를 출력하는 코드
Hello, World!

여러 줄 주석

여러 줄 주석은 /* 과 */ 사이를 통째로 주석처리 합니다. 

다음은 여러 줄 주석을 사용한 예시입니다. 

/* 아래의 코드는 안녕, 세계!를 출력하는 것이고, 
매우 멋져요! */
printf("Hello, World!");
Hello, World!

또한, 한 프로젝트에서 여러 코드를 테스트해볼 시, 실행되지 않았으면 하는 코드를 삭제하지 않고 실행을 방지하는 도구로도 사용됩니다.

/*
printf("Hello, World!");
*/
printf("안녕, 세계!");
안녕, 세계!

 

다음 강의부터는 본격적으로 C 언어를 배우기 시작하도록 하겠습니다. 

'C' 카테고리의 다른 글

6. C 조건문 (if, else, else if, switch)  (0) 2022.02.19
5. C 연산자  (0) 2022.02.17
4. C 변수와 자료형  (0) 2022.02.16
3. C 출력 (글자 띄우기) - printf() 함수  (0) 2022.02.16
1. C 시작하기  (0) 2022.02.16