티스토리 뷰

tmp

c언어 - 변수

박스여우 2015. 8. 17. 09:37

 

 

c언어의 변수의 종류는 사용자 정의형과 기본형이 있습니다. 사용자 정의형에는 '구조체'가 있는데, 구조체는 차후에 포스팅 하겠습니다. 기본형 변수에는 정수형 실수형 문자형등이 있습니다. 각각형태의 변수에서 또 세부적으로 나뉘고 담을수있는 크기와 사용방법도 모두 다릅니다. 이번에는 기본형 변수에대해서 세세하게 알아보도록 하겠습니다.


변수의 선언 방법                                                                     


변수의 선언방법에는 두가지가 있습니다. 선언과 동시에 값을 집어넣는 방법인 '초기화'와 선언한뒤에 값을 집어넣는 방법이 있습니다. 이 두가지로 나뉘는 이유는 프로그램을 작성할때마다 다르지만, '초기화'하는 방법이 소스를 간략화 하는데 조금더 도움이 됩니다. 아래는 그 이유를 나타내주는 예시입니다.


int a =10;


위의 예시에서 빨간부분(int)는 변수의 자료형을 나타내는부분 이고, 초록부분(a) 는 변수의 이름입니다. 그리고 주황부분(=10) 은 그 변수안에 10이라는 값을 집어넣는다는 뜻이고, 마지막에 붙은 파란부분(; 세미콜론)은 이 문장을 마친다는 뜻입니다. 변수의 자료형을 나타내는 부분에 어떤 자료형을 넣느냐에 따라 변수에 담을수있는 값과 형태가 다릅니다. 그리고, a라는 변수의 이름을 나타내는 부분에는 자유롭게 원하는 변수의 이름을 정할수 있지만, 숫자로 시작하는 이름과 반복문,조건문등과 같은 '예약어'는 사용이 불가능합니다.


int test;

test =10;


위의 int a =10;은 '초기화'의 예시입니다. 또 아래의 예시는 그 반대의 예시인데, 둘중 '초기화'를 한 예시가 1줄이고, 그 반대의 예시가 2줄인것을 보실수 있습니다. 위의 예시를 통해 '초기화'를 한 소스가 좀더 소스를 간략화하는데 효과적인것을 보실수 있습니다.


자료형 변수이름 =값;


위의 예시들을 살펴보시면 아시겠지만, 변수의 선언 방법은 위와 같습니다. 또, 변수의 이름을 사용하여 선언한 뒤에도 값을 조정할 수 있습니다. 한번 선언된 뒤에 값을 변경하지 못하는 자료형인 '상수형' 'const'도 존재합니다. '상수형'은 차후에 추가로 포스팅을 하겠습니다.




정수형 변수 - Integer Varialbe                                                      


정수형 변수에는 short(2byte), int(4byte), long(8byte)이 세가지가 있습니다. 문자형 'char(1byte)'는 아스키코드를 사용해 숫자를 다뤄서 정수형 에 포함되긴 하지만, 문자를 담으니 문자형 변수로 다루겠습니다.



2byte 크기의 정수형 변수 'short'는 -32,768 ~ 32,767까지의 값을 담을수 있습니다. 또, 같은 용량을 차지하지만 부호가 없어 좀더 넓은 범위를 표현할수있는 unsigned short가 있는데 0~65,535까지의 값을 담을수 있습니다.


4byte 크기의 정수형 변수 'int'는 -2,147,483,648~2,147,483,647까지의 값을 담을 수 있고, 가장 대표적으로 쓰이는 정수의 자료형 입니다. 'int'도 마찬가지로 부호가 없는 'unsigned int'가 있고, 담을 수 있는 값은 0~4,294,967,295까지 입니다.


8byte 크기의 정수형 변수 'long'은 -922,337,203,685,477,508~922,337,203,685,477,507까지의 값을 담을수 있습니다. 'long'형 역시 마찬가지로 'unsigned long'형이 있습니다. 담을수 있는 값은 0~18,446,744,073,709,551,615까지 담을수 있습니다.




실수형 변수 - Real Varialbe                                                        


실수형 변수에는 float(4byte)와 double(8byte)가 있고 이 두가지보다 더 긴 long double 형이 있습니다. 4byte 크기의 'float'형은 3.4*10^37 ~ 3.4*10^38까지의 숫자를 다루고 8byte크기의 'double'형은 1.7*10^307~1.7*10^308까지의 소수를 다룹니다. 위의 값들을 보면 알아볼수 없는데요... 사실 임베디드처럼 깊게 프로그래밍을 하지 않을때는 컴파일러가 대부분 범위를 벗어났을때 잡아주기 때문에 크게 신경쓸 필요는 없을것 같습니다.




문자형 변수 - Character Varialbe                                                  

                                                                               

문자형 변수에는 1byte 크기의 'char'형이 있습니다. char형은 0~127까지의 숫자를 다뤄서 아스키 코드를 사용합니다. 아스키코드는 특수문자와 알파벳 대,소문자를 모두 다룰수있습니다. 아래는 아스키코드표 입니다.

 

 


댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함