본문 바로가기
Basic/C/C++

[C언어] 제 2 강 : 기본 문장 & printf 함수

by boxbop 2011. 12. 26.
반응형

int main(void)
{
    return 0;
}
 이러한 형태가 프로그램의 가장 기본적인 틀이라고 할 수 있습니다. main이라는 이름을 가진 함수의 안에 프로그래머가 원하는 코드를 채워 넣습니다. 위의 코드를 실행해도 실행은 되지만 아무런 결과는 나오지 않습니다. 채워놓은 내용이 없기 때문이죠. 그렇다면 return 0; 은 무엇입니까? main함수의 종료를 나타내는 겁니다. 즉, 메인함수의 종료로 프로그램의 종료까지 이어집니다. 함수의 시작과 끝은 { , } 로 나타냅니다.

#include <stdio.h>
int main(void)
{
   
printf("test입니다.\n");
    return 0;
}

 printf 함수는 괄호안의 내용을 출력합니다. 출력하는 내용은 큰 따옴표 " , "안에 넣습니다. \n은 개행을 출력하는 것 으로 키보드의 Enter의 역할을 합니다.
#include<stdio.h>는 헤더파일을 선언하는 문장으로 stdio.h 이라는 헤더파일을 포함한다는 의미입니다. printf 함수는 이 stdio.h 헤더파일을 포함해야 사용 할 수 있습니다. 문장의 끝에 기재되어있는 세미콜론(;)은 문장의 끝을 나타냅니다. 예를들어 printf문과 return을 구분하기 위한, 즉 명령문을 구분하는 역할을 합니다.

 \n와 같은 문장을 이스케이프 시퀀스라고 하는데 개행출력을 나타내는 \n이외에도 많은 문장들이 존재합니다. 간단히 살펴보고 넘어가죠~

- \a : 경고음                   - \' : 작은 따옴표 출력 
- \b : 백스페이스             - \" : 큰 따옴표 출력
- \t : 수평 탭                   - \? : 물음표 출력
- \v : 수직 탭                  - \\ : 역슬래쉬 출력

 이번에는 서식문자에 대해서 알아보겠습니다.

 printf(" 숫자 : %d, 숫자 : %d ", 1, 2);

이러한 printf 문에서 %d 와 같은 문장을 서식문자라고 하는데요. %d가 의미하는 바는 데이터를 10진수 정수형으로 나타내라는 의미 입니다. 서식문자에 들어가는 데이터는 큰 따옴표 문장 뒤에 쉼표(,)로 구분하여 나타냅니다. 위 의 문장 같은 경우는 " 숫자 : 1, 숫자 : 2 " 라고 출력이 되겠네요~

 이번에는 메모리에 공간을 할당해 나타낼 수 있는 변수를 가지고 출력을 해봅시다.

 int value = 100;
 printf("
변수에 저장된 숫자는 ? %d 입니다.", value);

 value 라는 이름을 가진 int 형 변수에 100 이라는 숫자를 저장합니다. 그리고 전과 같은 printf문이 보이죠? 직접적인 숫자대신 변수 value이 들어가 있습니다. 출력은 " 변수에 저장된 숫자는 ? 100 입니다 " 라고 나타나겠죠~? 물론 큰 따옴표는 제외입니다. 큰 따옴표를 출력하기 위해서는 이스케이프 시퀀스를 사용해야 정상적으로 출력할 수 있겠죠~?ㅋㅋㅋ " = " 등호의 의미는 수학에서는 2개의 값이 같다고 나타내지만 프로그래밍 언어에서는 오른쪽에 있는 값을 왼쪽에 대입한다는 의미로 사용됩니다.

 마지막으로 주석에 대해서 알아봅시다!!! 별거 아닌 것 같았지만 진짜로 아주 아주 중요하게 사용되는 문장 중에 하나입니다. 실질적으로 프로그램을 작성할때 아무런 결과를 나타내지는 않습니다. 주석은 코드에 간단하게 메모하는 기능을 담당합니다. 즉, 소스코드를 쉽게 분석할 수 있도록 프로그래머가 소스에 간단하게 메모하는 것이죠~

 printf("주석을 달아주세요\n");    //출력함수입니다.

 이런 방법으로 메모를 해주는데요 주석의 표시 방법에는 // 과 /* ...내용... */으로 나타낼 수 있습니다. //는 한 줄, /* */는 여러 행에 걸쳐서 표현 할 수 있습니다.

 // 한 줄 메모
 /* 메모가
     가능합니다. */

 이러한 형태로 나타내는 겁니다~ 쉽죠? 오늘은 딱 요기까지만 하도록 하겠습니다. 사실 어설픈...? 강의의 형태로 포스팅을 하지만 너무 딱딱하게 요약 정리만 해서 포스팅하면 뭔가가 좀 그래서...... 개인적으로 복습도 할겸 혹시라도 누군가에게 단 한사람이라도 도움이 되지 않을까해서...^^;;ㅎㅎㅎㅎ 이상!! 감사합니다^-^
반응형