C 언어 변수 선언 및 초기화

C 언어에서 변수 선언 방법과 초기화 방법을 알아보겠습니다.

먼저 변수란 무엇인지 알아보겠습니다.

 

변수

변하는 수라는 뜻으로 값이 수시로 변하는 값을 변수라고 합니다.

변수는 고정된 데이터가 아니라 그릇이기 때문에 그릇에 담는 데이터에 따라 값이 달라집니다. 
그래서 변한다는 의미의 변수입니다.

변수를 선언하면 메모리 공간이 할당되고 할당된 메모리 공간에 이름이 붙습니다.

 

변수 선언

프로그램 언어 공부를 시작할 때 가장 가장 먼저 실행해보는 Hello World를 예로 보겠습니다.

#include <stdio.h> 
int main(void) { 
	printf("Hello World \n"); 
	return 0; 
}

 

결과

Hello World 

 

변수를 선언해 Hello World를 출력하는 예제를 보겠습니다.

#include <stdio.h> 
int main(void) {
	char c = 'A';
	char str [20] = "Hello World";
	int num = 10;
	
	printf("%c \n", c); 
	printf("%s \n", str); 
	printf("%d", num); 
	
	return 0; 
}

 

결과

A 
Hello World 
10

 

변수를 선언하고 값을 대입시켰습니다.

선언 한 변수는 c라는 변수와 str 변수 num이라는 변수를 만들었습니다.

변수 이름은 만들고 싶은 이름으로 알기 쉽게 만들면 됩니다.

하지만 변수를 만들 때 규칙이 있으니 주의해야 합니다.

 

1. 첫글자는 영문

– 숫자나 한글 등 다른 언어가 맨 앞에 오면 안 됩니다.


2. 예약어는 변수명으로 사용 불가

– 예약어는 미리 예약되어 있는 단어입니다.

– 의미가 고정되어 있어서 사용자가 마음대로 의미를 변경할 수 없습니다.

– 보통 예약어를 쓰면 파란색 글자체로 표시되어 예약어를 썼는지 안 썼는지 알 수 있습니다.


3. 빈 칸(띄어쓰기) 사용 불가

– _(언더바)로 이어서 사용할 수는 있지만 공백으로 연결할 수는 없습니다.

– 변수명은 오직 영어, 숫자, _(언더바)로만 구성되어야 합니다.


4. 대/소문자를 구별합니다.

– Apple과 apple 은 다른 변수명으로 인식됩니다.

 

예제에서 작성한 변수를 보면 문자열 타입과 숫자 타입이 있습니다.

c라는 변수는 문자열 타입으로 지정하기 위해 변수 앞에 char라고 작성했습니다.

char로 작성 한 변수에는 문자열이 한 글자만 대입 가능합니다.

Hello World처럼 긴 문자열을 대입하고 싶은 경우에는 문자열 길이를 지정해야 합니다.

str 변수를 선언할 때 작성한 [20]은 문자열 길이를 의미합니다.

문자열이 아닌 숫자 타입의 값을 저장하고 싶은 경우에는 변수 앞에 int를 사용합니다.

char와 int 외에도 여러 형태의 변수를 설정할 수 있습니다.

 

데이터 타입

 자료형 크기 값의표현 범위 
 정수형 char  1바이트  -128 이상 +127 이하 
 short 2바이트  -32,768 이상 +32,767 이하 
 int  4바이트  -2,147,483,648 이상 +2,147,483,647 이하
 long 4바이트  -2,147,483,648 이상 +2,147,483,647이하
 long long  8바이트  -9,223,372,036,854,775,808 이상
+9,223,372,036,854,775,807 이하
 실수형 float 4바이트 -3.4 x 10^38 ~ 3.4 x 10^38
 double 8바이트 -1.8 x 10^308 ~ 1.8 x 10^308
 long double 8바이트 이상 -1.8 x 10^308 ~ 1.8 x 10^308

 

많은 데이터 자료형들이 있지만 자주 사용하는 데이터 타입입니다.

자주 사용하는 만큼 값을 지정할 수 있는 범위를 기억해 두고 있는 것이 좋습니다.

댓글