독학으로 배우는 C언어 006 변수와 상수
Contents
1. 변수와 상수
프로그램이 실행 중에 값이 바뀔 수 있는 것을 변수라고 한다. 반대로 값이 고정되어 바뀌지 않는 것을 상수라 한다. 프로그램에서 변수는 값을 기억시켜 두는 기억장소를 말하며 기억장소를 구별하기 위하여 붙이는 이름을 변수명이라고 한다.
예를 들어 7이라는 숫자를 number라는 변수명으로 기억장소에 기억시키려면
number = 7;
같은 방법으로 기억시킨다.
number = 7; 에서 number가 변수 7은 상수가 된다.
실습 1: 변수의 사용
다음의 프로그램을 작성하여 ex007.c 저장하고 실행해 보자.
#include <stdio.h>
int main(void)
{
int number;
number = 7;
printf("number 변수의 값은 %d입니다. \n", number);
return 0;
}
◉ 설명 : 행 설명
4: int number;
number은 변수명인데 int는 무엇인지 궁금할 것이다.
C언어에서는 변수명을 사용하기 전에 사용할 변수가 어떤 형태의 데이터로 사용할 것인지를 미리 알려주어야 한다. 이를 선언이라고 하는데 int는 정수형으로 사용하겠다고 선언하는 것이다.
변수를 선언하고 사용하는 이유는
첫 번째로 잘못된 데이터를 사용하는 것을 방지하기 위해서이다. C언어에서 사용하는 기본적인 자료형에는 정수형, 실수형, 문자형이 있다. 자료형은 이 세 가지만 있는 것이 아니고 상당히 복잡할 만큼 상당히 많은 자료형을 가지고 있다. 프로그래머는 프로그램을 개발하기 전에 변수의 사용 용도를 설계하고 어떤 용도로 사용할 것인지를 명확하게 해두면 변수 사용으로 인한 오류를 방지할 수 있다.
두 번째는 메모리를 절약하기 위해서이다.
프로그램이 실행될 때 메모리를 사용하는 변수의 자료형을 용도에 맞게 명확하게 선언하지 않으면 메모리를 낭비하여 프로그램 실행 속도에 영향을 미치게 된다.
예를 들어 택배 포장 박스를 생각해 보자. 작은 물건을 배송하는데 큰 포장 박스를 사용하는 것은 낭비다. 그런데도 포장하기 편하다고 작은 물건을 포장하는데 불필요하게 큰 포장 박스를 사용한다. 이런 포장 관행이 환경 문제가 발생하는 문제점 때문에 환경부에서는 과대포장을 막는 규정을 만들었다. 적은 메모리가 사용될 변수를 큰 메모리를 사용하는 변수를 사용한다면 그만큼 컴퓨터 자원을 낭비하게 된다. 그래서 변수를 선언할 때 변수의 크기를 고려하여 적당한 자료형으로 선언해야 한다. 프로그램 언어 중에서 파이썬은 변수의 자료형이 단순하다. 지금의 택배 과대 포장과 똑같다. C언어 에서는 메모리 관리를 중요하게 생각한다. 즉 자료형에 따라 미리 적절한 크기의 메모리를 확보하기 위해서 변수의 자료형을 선언해야 한다.
5: number = 7;은 7이라는 숫자를 정수형 변수인 number에 보관하라는 의미이다.
6: printf("number 변수의 값은 %d입니다. \n", number); 이 문장은
앞에서 배운 대로 이해한다면
%d에 number이 대치된다고 이해했을 것이다.
그래서 이렇게 출력될 것이라고 생각하는 사람도 있을 수 있다.
number 변수의 값은 number입니다.
그런데 이렇게 출력된다.
number 변수의 값은 7입니다.
이렇게 출력된 이유는 대치되는 값에 ‘ ’ 나 “ ” 로 감싸있으면 자료 즉 상수가 되지만 감싸있지 않으면 변수 이름이 된다.
이때는 변수 이름이 출력되는 것이 아니고 변수 안에 들어 있는 내용이 출력된다.
그래서 7이 출력된 것이다.
2. 변수 이름을 만드는 법
사람의 이름도 의미를 가지고 만든다. 아무렇게나 이름을 만들어 평생 사용하는 사람이 없다. 변수도 마찬가지다. 변수 이름으로 어떤 변수인지 의미를 파악할 수 있도록 의미를 가진 이름을 사용하는 것이 좋다.
① 변수 첫 문자는 영문자나 밑줄(_)로 시작하며 그 이후 문자는 영문자나 숫자 또는 밑줄 어느 것이라도 좋다.
(밑줄로 시작하는 변수는 주로 시스템 프로그램에 사용하므로 사용하지 않는 것이 좋다.)
예) count, hap, kor, avg, _sum, k123
잘못된 방법) -sum, 7avg
② C언어에서 사용하는 예약어는 변수 이름으로 사용할 수 없다.
예 ) auto
③ 변수 이름은 대문자와 소문자를 다른 변수로 간주한다.
예 ) count, COUNT, Count는 다른 변수 이름으로 처리된다.
④ 변 수이름 사이에 공백은 포함할 수 없다.
예) c ount, co unt
⑤ 한글은 변수명으로 사용할 수 없다.
⑥ 변수 이름의 글자 수 제한에는 신경을 쓸 필요가 없지만 긴 단어를 만들어 사용하는 것은 불편을 초래하기 때문에 간략하게 사용한다.
3. 변수의 사용 방법
① 프로그램에서 사용할 변수는 반드시 프로그램 첫머리에 사용할 변수의 형을 지정하여야 한다.
② 변수에는 초기 값을 저장한다.
ex007.c 에서는
7이라는 상수를 number 변수에 저장했다.
number = 7;
4. 자료형
C 언어에서 제공되는 자료형은 다른 언어와는 비교가 되지 않을 만큼 많다. 모든 형을 소개하는 것 자체가 시간 낭비가 될 수 있어 기본형을 중심으로 많이 사용하는 자료형만 다루기로 하겠다.
C 언어에서 자료를 사용하기 위해서는 다음의 사항을 고려하여 자료형을 선언해야 한다.
형태 : 정수인가 실수인가 문자인가 문자열인가?
범위 : 0 에서 255 사이인가 65536 이상인가?
부호 : 음수도 사용되는가 아니면 양수만 사용되는가?
'C 프로그래밍' 카테고리의 다른 글
독학으로 배우는 C언어 008 자료형과 연산 2 (2) | 2024.06.10 |
---|---|
독학으로 배우는 C언어 007 자료형과 연산 1 (4) | 2024.06.08 |
독학으로 배우는 C언어 005 형식 지정자 사용 (0) | 2024.06.04 |
독학으로 배우는 C언어 004 printf()의 기본 사용 (0) | 2024.06.02 |
독학으로 배우는 C언어 003 C언어 구조와 컴파일 오류 (0) | 2024.05.31 |
댓글