자료형
저장하는 데이터의 크기에 따라 필요한 메모리 공간의 크기가 다름.
데이터의 종류에 따라 변수의 종류를 다르게 하는 것이 효율적임.
적절한 자료형을 사용하면 메모리를 절약하고, 실행 속도를 향상시킴.
가. 자료형의 종류
1) 정수형(Integer type): short, int, long
2) 실수형: double, float
3) 문자형(character type): char
나. 자료형의 크기 확인
sizeof()
연산자 사용
자료형의 크기를 반환하는 연산자
https://ko.wikipedia.org/wiki/자료형
자료형 - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. 파이썬 3의 표준 자료형 계층 자료형(資料型) 또는 데이터 타입(영어: data type)은 컴퓨터 과학과 프로그래밍 언어에서 실수치, 정수, 불린 자료형 따위의 여러 종
ko.wikipedia.org
1. 정수형
가. 정수형의 종류
1) 정수형
가장 기본적인 데이터 타입
2) 정수형의 종류
short, int, long, long long
나. 정수 출력 형식지정자
%d
int inData = 5;
printf("%d \n", inData); // 5
printf("%5d \n", inData); // ____5(최소 5자리 출력하는데 값은 오른쪽 정렬)
printf("%5.2d \n", inData): // ___05(최소 5자리 출력하는데 값을 2자리로 출력 모자라면 0으로 채움)
다. 오버플로우
변수가 나타낼 수 있는 범위를 넘는 숫자를 저장하려고 할 때 발생
정수형에서 오버플로우 발생하면 경고 없음.
2. 실수형
가. 실수 표현 방법
1) 고정 소수점(Fixed Point) 방식
소수점 위치를 고정시키고 정수부와 소수부를 나누어 표현
2) 부동 소수점(Floating Point) 방식
컴퓨터에서 실수는 부동소수점형으로 표현
소수점이 떠서 움직인다는 의미
과학자들이 많이 사용하는 과학적 표기법과 유사
https://ko.wikipedia.org/wiki/부동소수점
부동소수점 - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. 초기의 전기기계식 프로그래밍 가능한 컴퓨터 Z3에는 부동소수점 산술 기능이 포함되었다. (뮌헨의 국립 독일 박물관) 부동소수점(浮動小數點, floating point) 또
ko.wikipedia.org
3) 실수형 종류
자료형 | 설명 | 바이트 | 범위 | |
부동소수점형 | float | 단일정밀도 부동소수점 | 4 | 1.2E-38 ~ 3.4E38 |
double | 두배정밀도 부동소수점 | 8 | 2.2E-308 ~ 1.8E308 | |
long double | 두배정밀도 부동소수점 | 8 | 2.2E-308 ~ 1.8E308 |
나. 실수 출력 형식지정자
%f(기본 소수점 6자리까지 반올림해서 출력)
double d = 0.123456789;
printf("%f \n", d); // 0.123457
printf("%10.8f \n", d); // 0.12345679 (최소 10자리 출력, 소수점 이하 8자리 출력)
printf("%10.3f \n", d); // _____0.123 (최소 10자리 출력, 소수점 이하 3자리 출력)
다. 오버플로우
1) 언더플로우
부동소수점 지수가 음수로 너무 작아서 표현하기 힘든 상황
3. 문자형
가. 아스키코드
문자는 컴퓨터보다는 인간에게 중요
문자도 숫자를 이용하여 표현
공통적인 규격이 필요
아스키 코드(ASCII: American Standard Code for Information Interchange)
나. 자료형의 종류
자료형 | 설명 | 바이트 | 범위 | ||
문자형 | 부호있음 | char | 문자 및 정수 | 1 | -128 ~ 127 |
부호없음 | unsigned char | 문자 및 부호없는 정수 | 1 | 0 ~ 255 |
다. 문자 변수와 문자 상수
char code; // 문자형 변수 선언
code = 65; // 변수에 'A' 값 저장
code = 'A';
라. 문자 출력 형식지정자
%c
char code = 'A';
printf("%d \n", code); // 65
printf("%d \n", code+1); // 66
printf("%d \n", code+2); // 67
printf("%c \n", code); // A
printf("%c \n", code+1); // B
printf("%c \n", code+2); // C
마. 제어문자(탈출문자)
인쇄 목적이 아니라 제어 목적으로 사용되는 문자들
줄바꿈 문자, 탭 문자, 벨소리 문자, 백스페이스 문자 등
https://ko.wikipedia.org/wiki/제어_문자
제어 문자 - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. 컴퓨팅 및 전자통신 환경에서 제어 문자(control character) 또는 비인쇄 문자(NPC,non-printing character)는 문자 집합의 특별한 문자이다. 아스키에서의 제어 문자[편집] 0
ko.wikipedia.org