자료형의 종류 — int·float·double·char 크기와 정밀도 | 기초 C언어 4.1.3
기초 C언어Chapter 04 변수 › Section 01 변수와 식별자, 자료형 › 03
4.1.3 자료형의 종류
어떤 상자를 고를 것인가. 정수형·실수형·문자형과 그 크기를 본다.
크기·범위·정밀도는 교재의 대표 환경 기준. 실제 크기는 구현에 따라 달라지며, char는 항상 1바이트이나 1바이트의 비트 수와 char의 부호는 환경에 따라 달라짐.
01기본 자료형은 세 갈래교재 87p
- 담을 데이터가 무엇이냐에 따라 정수형 · 실수형 · 문자형 으로 나뉨.
- 3장의 상수 네 가지(정수 · 실수 · 문자 · 문자열)가 여기서 변수의 자료형으로 이어짐.
02정수형 — 대표 자료형의 크기교재 87p
- 소수점이 없는 숫자를 담음. 필요한 공간에 딱 맞는 상자를 골라 메모리를 아끼려고 여러 크기를 둠.
| 자료형 | 크기 | 값의 범위(대략) |
|---|---|---|
| int | 4 바이트 | −21억 ~ 21억 · 가장 널리 쓰는 기본 정수형 |
| short | 2 바이트 | −32,768 ~ 32,767 |
나머지 long 은 교재 87p 표 4.2 에 정리해 두었습니다.
부호를 떼면 범위가 두 배
정수형 앞에 signed(부호 있음, 기본값)나 unsigned(부호 없음)를 붙여 범위를 조절함. unsigned 를 쓰면 음수를 버리는 대신 양수 쪽을 두 배까지 표현함.
03실수형 — 갈리는 것은 정밀도교재 87p~88p
- 정밀도(Precision) — 값을 얼마나 세밀하게 표현할 수 있는가.
- float — 4 바이트, 유효 숫자 약 7자리.
- double — 8 바이트, 유효 숫자 약 15~16자리. float 보다 정밀함.
- 일반 자와 정밀 측정 기구의 차이와 같음. 간단한 길이는 일반 자로 충분하고, 세밀한 측정에는 정밀 기구가 필요함.
04문자형 — 본질은 1바이트 정수형교재 88p
- char — 1 바이트. 8비트 signed char의 범위는 −128 ~ 127이며, plain char의 부호 유무는 구현에 따라 달라짐.
- 아스키 환경에서는 문자를 숫자 코드로 저장함. 그래서 char 는 본질적으로 정수형.
- 이 성질 때문에 문자에 산술 연산이 됨 — 'A' + 1 은 'B'.
05이 예제에서 드러나는 float의 정밀도교재 89p
float f = 3.1415926535;double d = 3.1415926535;
| 출력 | 결과 |
|---|---|
| %.10f (float) | 3.1415927410 ← 여덟째 자리부터 어긋남 |
| %.10lf (double) | 3.1415926535 |
전체 코드와 줄별 해설은 교재 89p CODE 4.1 에 있습니다.
이 절의 핵심 정리
- 기본 자료형은 정수형 · 실수형 · 문자형 세 갈래다
- 이 절에서는 대표 정수형 셋(short·int·long)을 살펴본다. 같은 비트 수의 unsigned는 음수 대신 더 큰 양수를 표현한다
- 실수형을 가르는 것은 정밀도다 — float 약 7자리, double 약 15~16자리
- char는 본질적으로 1바이트 정수형이라 문자에 산술 연산이 된다
- 이 예제의 float 출력에서는 여덟째 유효 숫자부터 차이가 나타난다
강의 자료4.1.3 자료형의 종류
1 / 12
번호를 누르면 해당 장으로 바로 이동합니다 · 방향키 ← → 로도 넘길 수 있습니다
더 자세한 내용은 교재에서
이 글은 『기초 C언어』 87p~90p의 내용을 강의 영상에 맞춰 핵심만 간추린 요약입니다. 각 개념의 상세한 설명과 예제, 실습 코드, 임용시험 기출문제 풀이는 교재에서 다루고 있습니다.
댓글
댓글 쓰기