파트 1 자료형
자료형이란 ? 변수가 저장하는 데이터 형식
-sizeof 연산자로 자료형의 크기를 구할 수 있다.
사용법
sizeof(자료형) |
자료형의 메모리 크기 |
sizeof(변수) |
변수의 메모리 크기 |
정수형 메모리 크기
char |
short |
int |
long |
1바이트 |
2바이트 |
3바이트 |
4바이트 |
실수형 메모리 크기
float |
double |
long double |
4바이트 |
8바이트 |
8바이트 |
정수형 데이터의 표현 범위
정수형의 양수 표현 범위를 두 배로 늘리는 unsigned 자료형이 있다.
-signed 양수,0,음수를 모두 표현
-unsigned 0과 양수만을 표현 ( %u로 사용)
정수형은 int 형을 선호한다.
대부분의 컴퓨터위 cpu가 연산하는 기본 단위가 최소 32비트이기 때문에 int형을 가장 빠르게 처리한다.
오버플로우와 언더플로우
char 형에서 -129 ( 최솟값 보다 -1 작은 값 저장 언더플로우) -결과 127
char 형에서 128 (최댓값보다 1만큼 큰 값 저장 오버플로우) -결과 -128
이유 : 메모리 방에서 차이만큼 밀리기 때문에
실수형은 데이터의 정밀도를 높이기 위해 사용
float |
소수점 이하 6자리까지 표현 가능 |
double |
소수점 이하 15자리까지 표현 가능 |
long double |
소수점 이하 15짜리 또는 그 이상까지 표현 가능 |
실수형은 double 형을 선호한다.
문자형은 char 형을 선호한다.
자료형 변환
컴파일러가 자동으로 형변환 - 자동 형변환
자료형 변환의 우선순위 : 정밀도가 작은 자료형이 큰 자료형으로 변환
char -> int -> long -> float -> double -> long double
대입 연산을 하는 경웨 대입 연산자를 기준으로 오른쪽에서 왼쪽으로 자동 형변환
프로그래머가 강제로 형변환을 해준다 - 강제 형변환
ex )
int num1=2;
(double)num1;
자료형 변수
typedef를 이용한 자료형의 재정의
ex)
typedef int mytype;
기본자료형 사용자 정의 자료형
연습문제 )
사용자에게 ASCII 코드 값을 입력받아 그 값에 해당하는 문자를 출력하는 프로그램
원의 반지름 r을 입력받아 원의 면적과 원의 둘레를 구하는 프로그램