1. 시작
새로운 언어를 가장 빨리 배우는 법은 그 언어로 프로그램을 짜보는 것입니다. 처음에는 에러도 실수도 많겠지만 고쳐가는 과정에서 실력은 눈에 띄게 늘게 될 것임을 확신합니다.
모든 프로그래밍 언어에서 시작은 항상 다음과 같은 문자를 화면에 출력하는 프로그램을 짜는 것으로 시작합니다.
hello, world!
이 프로그램을 C언어로 작성하는 것은 매우 간단합니다. 파일 이름을 hello.c라고 저장합니다.
#include <stdio.h>
void main()
{
printf("hello, world!\n);
}
2. 프로그램 분석
매우 짧은 프로그램이지만, 살짝 분석을 해보겠습니다.
#include <stdio.h>
#include는 다음에 나오는 <>사이의 파일을 포함시키겠다는 매크로 입니다. 여기서는 stdio.h라는 파일을 포함시키겠다는 의미인데, 그 파일에는 표준 입출력에 관련된 라이브러리 함수선언이 포함되어 있습니다. 표준 입출력은 키보드 입력과 화면 출력등을 하는 것을 의미합니다. 우리가 작성한 프로그램에서는 printf()라는 함수가 화면 출력을 담당하는 라이브러리 함수인데 이 녀석을 사용한다는 의미로 이와 같은 코드가 포함되었습니다.
void main()
{
}
C언어 프로그램에서 사용자가 작성한 함수는 어떤 이름 이던 문법에 맞기만 하면 사용이 가능합니다. 그런데 주 프로그램이 실행되는 함수의 이름은 위와 같이 main이라는 이름으로 고정되어 있습니다. 프로그램이 굉장히 크고 복잡하더라도 main이라는 함수는 한개만 있어야 하고, 프로그램의 시작은 여기서 부터 입니다.
main 앞에 붙은 void는 함수가 리턴하는 타입을 의미하는데요, 여기서 void는 없슴을 뜻한다고만 알아두시면 됩니다.
main뒤의 소괄호 ()안에는 함수에 전달할 파라미터(Parameter)를 넣을 수 있습니다. 여기는 비어있네요.
함수의 내용은 중괄호 {}로 쌓여 있고 그 안에 내용을 작성하시면 됩니다.
printf ("hello, world!\n");
이 문장은 printf 함수를 호출하는 명령이고, 이 함수는 화면에 따옴표로 쌓여 있는 부분이 출력 하는 기능을 합니다.
따옴표로 쌓여 있는 문자열의 맨 마지막에 \n은 printf함수에서 줄을 바꾸라는 특수 문자입니다. 그리고 끝에 세미콜론( ; )을 붙여 문장의 끝을 알려줍니다.
3. 프로그램 실행하기
프로그램을 작성한 이후에 컴파일 과정이 필요한데요.
(프리프로세싱 - 컴파일 - 링크 등의 더 복잡한 과정이 있지만, 다음 기회에 자세한 설명을 하겠습니다.)
소스코드가 있는 디렉토리에서 다음과 같이 실행을 하면 a.out이라는 실행파일이 생성됩니다.
# cc hello.c <== unix 벤더의 C 컴파일러를 사용하는 경우
또는
# gcc hello.c <== linux에서 gnu gcc를 사용하는 경우
프로그램을 실행하면,,
# a.out
hello, world!
#
원하는 hello, world!가 출력됩니다.
만약 실행 파일이름을 특정하고 싶으면 컴파일 옵션을 조정하면 됩니다.
# gcc -o test hello.c
이렇게 하면 test라는 실행파일이 생성됩니다.
누구나 프로그래밍 언어 공부를 시작할 땐 멋진 프로그램을 만드는 것을 상상하지만, hello, world! 에서 끝나는 경우가 많습니다. 항상 새로운 마음으로 배우고 익히는 힘든 과정을 버텨내서 상상이 현실이 되길 기원합니다.
다음 시간에는 C언어의 기본 데이터형에 대해서 알아보겠습니다. 빠이~
'프로그래밍 > C언어' 카테고리의 다른 글
C언어 공부하기 - 순환문(1) while, for (0) | 2020.07.23 |
---|---|
C언어 공부하기 - 제어문 (1) | 2020.07.21 |
C언어 공부하기 - 연산자 (0) | 2020.07.20 |
C언어 공부하기 - 변수와 상수 (0) | 2020.07.18 |
C언어 공부하기 - 개요 (0) | 2020.07.14 |
댓글