본문 바로가기
스터디/c, c++

[C] 정수형 자료형의 특성과 상수!

by 깝태 2010. 8. 24.

저 번에 이미 자료형들의 특징에 관해 한번 서술한적이 있는데, C 언어 강의는 너무 오랫동안 작성을 안 한것같아 (현재 공부하고 있음에도 불구하고) 진도를 살짝 나가보려 합니다. 아마 다음주나, 다다음주 쯤 되면 중간고사를 준비하느라 자주 못 들어올것같습니다. 게다가 중간고사 끝나면 바로 기말고사에 기말고사 끝나면 바로 고입크리 ㅠㅠ; 그래서 늦기전에 많이많이 미리 글을 써놓으려고 합니다. 특히 프로그래밍에 관한 게시글을 많이 작성할듯 싶습니다. 먼저 정수형 자료형들의 특징을 설명해드리겠습니다.

2010/03/26 - [ 프로그래밍/  C / C++] - [C갤] C언어, 변수들의 기본자료형!

  자료형   메모리 크기   데이터 범위 
 char  1바이트(8비트)  -128 ~ +127
 unsigned char  1바이트(8비트)  +255
 short  2바이트(16비트)  -32768 ~ +32767
 unsigned short  2바이트(16비트)  +65535
 int  4바이트(32비트)  -2147483648 ~ +2147483647
 unsigned int  4바이트(32비트)  +4294967295
 long  4바이트(32비트)  -2147483648 ~ +2147483647
 unsigned long  4바이트(32비트)  +4294967295
( 오타가 있으면 지적해주세요 )



원래 앞에 unsigned 붙어있지 않은 자료형의 이름은 본래 'signed ****' 이였으나 자동으로 생략을 한다고 합니다.
C에서는 unsigned를 붙였을때 부호를 결정하는 첫번째 비트를 사용하지 않아 0 이하의 수를 모두 양수로 인지해 모든값은 양수가 됩니다.
그러나 정수형 자료형에서만 unsigned 붙일수 있지 실수형자료형에는 따로 붙일수 없다는것을 기억해주시길바랍니다.

상수란, 변수와 달리 변경이 불가능한 데이터를 의미합니다. 그리고 크게 이름이 없거나, 있는 상수로 나눌 수 있습니다.

리터럴(literal) 상수 - 이름을 지니지 않는다.
리터럴 상수는 변수와 달리 할당된 메모리 공간에 이름이 없다.

심볼릭(Symbolic) 상수 - 이름을 지니고 있다.
심볼릭 상수를 표현할때는 const 키워드를 사용하거나 매크로를 이용한다.
꼭 선언과 동시에 초기화를 해주어야하며, 초기화되면 그 값을 변경할 수 없다.

상수설명이 부족해서 나중에 보충해보겠습니다.
강의 읽어주셔서 감사합니다.