Hello World! 살펴 보기
앞서 Visual C++을 설치했을 것이고
Hello World! 예제도 한번 접해 봤을 것이다.
자! 이제 구문을 하나 하나 해석 해보자.
우선 #include <stdio.h> 부터 알아보자.
#include 라는 뜻은 직역하면 사실 '포함하다' 라는 의미라는건 다들 잘 아실 것이다.
이는 여기서 <>헤더파일을 참고하겠다 라는 뜻으로 쓰인다고 생각하자.
그럼 <stdio.h>는 무엇인가? 바로 헤더 파일(Header File)을 뜻한다. 즉, 모두 직역하면 "stdio.h라는 헤더파일을 참고하겠다"라는 뜻이다.
이 stdio.h파일은 '표준 라이브러리'라고도 불리는데, 이는 '표준 함수'의 집합이란 소리다.
그럼, 표준 함수란 무엇이냐? 바로 기본적으로 제공되는 함수를 말한다.
그러니까 해당 헤더 파일안에 들어있는 함수란 소리다.
예를 들어, stdio.h라는 헤더 파일에는 printf와 scanf같은 표준 함수를 제공한다.
이제 그 밑의 int main(void)라는 구문을 보자.
이 구문은 main이라는 함수를 선언한다.
main함수는 프로젝트당 한 개만 선언 가능하다.
{ } <= 이 중 괄호 내부는 '함수의 몸체'라고 불리는데 사실상 '기능 정의 영역'이다.
* 함수의 정의 : 만들어진 함수, 실행 가능 함수
* 함수의 호출 : 함수의 실행을 명령하는 행위
* 인자의 전달 : 함수의 실행을 명령할 때, 전달하는 입력 값
즉, int는 출력하는 형태(함수임을 강조, 반환형), void는 입력하는 형태, main은 함수를 의미한다.
이로써 메인 함수가 선언된 것이다.
함수의 몸체로 한번 들어가보자.
printf("Hello World!"); 라는 구문을 보면, printf라는 함수는 stdio.h에 의해 정의된다고 앞서 말했다.
이로써 정의되어진 printf함수는 출력을 담당한다.
즉, 인자값인 Hello World!가 모니터에 출력된다.
printf의 형태를 살펴보면
printf("인자1", 인자2);
인자1 : 다양한 형태의 데이터를 출력 가능
=> \n(개행 문자)과 같은 특수 문자(escape sequence)와 %d(정수 출력)와 같은 서식 문자(conversion specifier)가 올 수 있다.
인자2 : 변수의 호출 및 계산 결과를 서식 문자를 통해 출력
=> printf("%d",1); 결과는 1을 출력.
그리고 '//결과' 가 보이는가?
바로 주석이다.
주석이란? 일종의 설명이다. 이 설명 부위는 컴파일할 때 무시되기 때문에 편리하다.
//는 행 단위 주석
ex) //주석 처리
/* */는 블록 단위 주석
ex) /* 주석
처리 */
마지막으로 return 문제인데...
return문은 함수의 종료를 나타내고, 값의 전달(반환)의 의미도 있다.
특히 0을 반환하면 정상 종료, 그 이외의 값은 비정상 종료에 해당한다.
대충 HelloWorld! 예제를 살펴 보았다.
이로써 대출 C언어가 무엇이구나 라는 것은 알게 되었을 것이다.