Skip to content

1. 변수(Variable)


1. 키워드

  • 변수(Variable)


2. 변수 만들기

  • 프로그래밍을 하면서 값을 다루려면 변수가 필요하다.
  • 이번에는 변수를 만들고 변수에 값을 저장하는 방법에 대해 알아보자.


  • C에서는 다음 그림과 같은 형식으로 코드를 입력하여 변수를 만든다.


001


  • 먼저 int 타입은 정수를 뜻하는 Integer의 축약형이며 자료형이라고 한다.
  • 자료형은 다른 말로 타입이라고도 부른다.
  • int num1;이라고 입력하면 정수형 값(1, 2, 3, 0, -1, -2 등)을 저장할 수 있는 num1 변수가 만들어진다.
  • 또한 변수 이름은 원하는 대로 지으면 되지만 다음과 같은 규칙을 지켜야 한다.


1] 영문 문자와 숫자를 사용할 수 있다.

2] 대소문자를 구분한다.

3] 문자부터 시작해야 하며 숫자부터 시작하면 안 된다.

4] _(언더스코어)로 시작할 수 있다.

5] C의 키워드(int, short, long, float, void, if, for, while, switch 등)는 사용할 수 없다.


  • 이 과정을 "변수를 선언한다"라고 부른다.
  • 그리고 변수를 선언할 때는 반드시 맨 뒤에 ;(세미콜론)을 붙여주어야 한다.


선언하다

  • 변수를 생성한다고 말하지 않고 선언한다고 말하는 이유는, C의 문법은 무조건 위에서 아래로 해석되기 때문에 변수를 사용하려면 사용하는 부분보다 위에 변수를 선언해 주어야 한다.
  • 즉, 변수 선언이라는 말은 변수가 있다는 것을 알려준다는 뜻이다.


  • C는 저장할 값의 종류에 따라 자료형이 달라진다.
  • 다음은 C에서 사용할 수 있는 자료형의 종류이다.


1] char, short, int, long 타입

  • 정수
  • 저장할 수 있는 크기가 다르다.

2] float, double 타입

  • 실수

3] void

  • 형태가 없는 자료형
  • 포인터를 사용할 때, 함수의 반환값을 표현할 때 등 다양하게 사용된다.


3. 변수를 만들고 값 저장하기

  • 다음 내용을 입력한 뒤 실행해 보자.


#include <stdio.h>

int main()
{
    int num1; // 정수형 변수 선언
    int num2;
    int num3;

    num1 = 10; // 변수에 값 할당(저장)
    num2 = 20;
    num3 = 30;

    // 변수에 저장된 값을 %d로 출력
    printf("%d %d %d\n", num1, num2, num3); // 10 20 30

    return 0;
}


  • 변수 num1, num2, num3에 저장된 10, 20, 30이 화면에 출력된다.


  • 변수에 값을 저장할 때는 다음과 같이 =(등호)를 사용한다.


int num1; // 정수형 변수 선언
int num2;
int num3;

num1 = 10; // 변수에 값 할당(저장)
num2 = 20;
num3 = 30;


  • 먼저 변수를 선언하고, num1 = 10;처럼 = 뒤에 저장할 값을 지정해 주면 된다.


002


  • 변수에 값을 저장하는 과정을 "변수에 값을 할당한다"라고 부른다.
  • 일반적으로 수학에서는 =가 같다는 뜻이지만, C에서는 =를 값을 할당할 때 사용한다.
  • 그래서 num1 = 10;num110이 같다는 뜻이 아니라 num110을 할당(저장)한다는 뜻이 된다.


  • 변수를 선언하고 값을 할당했으면 printf 함수로 변수의 값을 화면에 출력한다.


printf("%d %d %d\n", num1, num2, num3); // 변수에 저장된 값을 %d로 출력


  • printf 함수 안의 %d는 10진수(Decimal)을 출력할 때 사용하는 서식 지정자이다.
  • 즉, 서식 지정자 하나에 변수(값) 하나가 대응된다.
  • 여기서는 %d3개 사용했고, 변수도 3개 지정했다.


4. 변수 여러 개를 한 번에 선언하기

  • 이번에는 변수 여러 개를 한 번에 선언하는 방법을 알아보자.


  • 다음 내용을 입력한 뒤 실행해 보자.


#include <stdio.h>

int main()
{
    int num1, num2, num3; // 변수를 콤마로 구분하여 변수 여러 개를 선언

    num1 = 10; // 변수에 값 할당
    num2 = 20;
    num3 = 30;

    // 변수에 저장된 값을 %d로 출력
    printf("%d %d %d\n", num1, num2, num3); // 10 20 30

    return 0;
}


  • 소스를 컴파일하여 실행해 보면 변수에 저장된 10 20 30이 출력된다.
  • C에서 변수 여러 개를 선언하려면 int num1, num2, num3;처럼 int를 한 번만 사용한 뒤 변수를 ,(콤마)로 구분하여 선언하면 된다.
  • 단, 자료형이 같을 때만 한 번에 여러 개를 선언할 수 있고, 자료형이 다르다면 따로 선언해야 한다.


5. 변수를 선언하면서 초기화하기

  • 지금까지 변수를 선언한 뒤 다른 줄에서 값을 할당했다.
  • 이번에는 변수를 선언하면서 값을 할당(초기화)해 보자.


#include <stdio.h>

int main()
{
    int num1 = 10;            // 변수를 선언하면서 값 할당(초기화)
    int num2 = 20, num3 = 30; // 변수 여러 개를 선언하면서 값 할당(초기화)

    // 변수에 저장된 값을 %d로 출력
    printf("%d %d %d\n", num1, num2, num3); // 10 20 30

    return 0;
}


  • int num1 = 10;처럼 변수를 선언하면서 =로 값을 할당하여 초기화할 수 있다.
  • 마찬가지로 변수 여러 개를 선언하면서 값을 초기화할 수도 있다.
  • 그리고 맨 마지막에는 반드시 ;(세미콜론)을 붙여준다.

References