[C언어] 2. 변수와 상수
상수 (constant)
코드를 작성하며 데이터를 표현하는 경우에 사용되는 수, 데이터를 상수 라고 합니다.
10 20 30 -40 -50
10.0 0.5 -8.3
'a' 'b' 'c' '1' '2' '3'
true false
코드를 작성하며 상수는 필수적으로 등장합니다.
하지만, 상수를 너무 많이 사용하게 된다면, 나중에 코드를 수정하는 방법이 조금 복잡해질 수 있습니다.
코드를 더 효율적으로 작성하기 위해서는 아래 설명할 변수를 많이 활용하는 것이 좋습니다.
변수 (variable)
프로그램을 작성하기 위해선 여러 데이터가 필요합니다.
이때 이런 데이터를 활용하기 위해선 변수를 사용해야합니다.
int value;
변수는 데이터를 저장하는 공간입니다.
사용자가 지정하는 고유한 이름과 (변수 이름) 고유한 데이터 타입을 가지고, 메모리에 일정 크기를 할당받습니다.
프로그래머는 변수의 이름으로 데이터를 참조할 수 있습니다.
변수를 사용하기 위해서는 항상 사용전에 미리 변수가 생성 되어야 합니다.
이 과정을 ‘변수 선언’ 이라고 합니다.
데이터 타입
변수는 여러가지 수를 저장할 수 있습니다. 하지만, 먼저 데이터가 활용될 방식을 정해 선언해야 합니다.
타입 | 메모리 크기 | |
---|---|---|
정수형 | short | 2byte |
int | 4byte | |
long | 8byte | |
실수형 | float | 4byte |
double | 8byte | |
문자형 | char | 1byte |
범위 초과 (Overflow)
변수의 타입에 따라 각각 저장될 데이터의 타입과 메모리 크기가 정해집니다.
이 과정중, 데이터가 메모리를 초과한다면, 이상한 연산 결과를 가져옵니다.
이는 ‘overflow’ 라 부릅니다.
int 데이터 형의 메모리는 4byte입니다. 그렇기 때문에, int데이터 형은 아래의 범위의 수를 저장할 수 있습니다.
-2,147,483,648 ~ 2,147,483,647
만약 int 변수에 최댓값이 저장되고, 이 변수에 양수인 ‘N’을 더한다면, 변수는 범위를 초과하여(Overflow) 아래의 결과값을 저장하게 됩니다.
-2,147,483,648 + N
변수의 선언
변수의 선언은 간단한 구조를 가집니다.
저장될 데이터의 타입을 번저 작성하고, 이후 변수의 이름을 지정할 수 있습니다.
int data;
만약 변수를 여러개 생성해야 하는 경우에는 컴마를 활용하여 다중 선언할 수 있습니다.
int a, b;
double value, val;
변수 초기화
변수가 선언되면, 변수는 랜덤한 데이터를 저장하고 있습니다. 때문에, 필요한 데이터를 활용하기 위해서는 먼저 변수를 초기화 시켜야 합니다.
int data = 0;
int val;
val = 0;
만약 변수를 초기화 하지 않고 사용한다면, 프로그램에 이상(버그)이 생길 수 있습니다.
변수 이름 조건
영문자, 숫자, ‘_’ 의 조합
int a;
int a1;
int num_array;
변수는 주로 영어와 숫자, 그리고 언더바(_)의 조합으로 이름이 지정됩니다.
여백이 허용되지 않는다
int num_people;
변수의 이름에는 여백이 허용되지 않습니다. 때문에 위에 설명한 언더바를 활용하는 경우가 많습니다.
숫자로 시작 할 수 없다
int 1a; // error
int a1;
변수의 이름은 숫자로 시작할 수 없습니다.
하지만, 숫자를 중간에 넣을수는 있습니다.
대소문자를 구분한다
int numPeople;
변수의 이름은 대소문자를 구분합니다. 대소문자에 관하여, 프로그래머들은 가독성을 위해 카멜표기법 (Camel Case)을 활용합니다.
Keyword는 변수명으로 사용할 수 없다
int char; // error
int int_peopleNum;
변수의 이름에 선언을 위한 명령어는 사용할 수 없습니다. 단, 중간에 삽입은 가능합니다.
💡 지적 환영합니다
Comments