내일배움캠프 2일차 - C++ 서식지정자, 자료형, ASCII, 유니코드

서식 지정자의 종류

%d: decimal의 약자. 10진수로 대체됩니다.

%o: octal의 약자. 8진수로 대체됩니다. ex) 9(10) <-> 11(8)

%x: hexadecimal의 약자. x는 소문자, X는 대문자로 대체됩니다. ex) 17(10) <-> 11(16)

%u: unsigned의 약자. 양수로 대체됩니다.

%c: character의 약자. 문자로 대체됩니다.

%s: string의 약자. 문자열로 대체됩니다.

%f: floating point의 약자. single precision.  

%lf: double precision floating point.


서식 지정자는 왜 필요할까요?

3245라는 숫자를 문자열에 편입시키기 위해서 printf(“Result: %d”, 3245)라고 적을 수 있습니다. 또한 서식 지정자를 활용하면 계산 결과도 얻어 낼 수 있습니다.

3245 * 2342의 계산 결과를 화면에 출력시키기 위해 printf(”Result: %d”, 3245 * 2342)라고도 적을 수 있습니다.

즉, 복잡한 수식을 빠른 시간안에 계산하고 그 결과를 원하는 형식으로 보기 위함입니다. 복잡한 소스코드를 작성할 때 디버깅 용도로 요긴하게 사용되기도 합니다.


자료형(Type)

저장될 데이터의 크기와 해석 방법에 대한 정보.

자료형크기 == 표현 가능한 수서식 지정자
char1 byte. -(2^7) ~ (2^7) - 1
[-128 ~ 127]
%c or %hhd
short int2 byte. -(2^15) ~ (2^15) - 1
[-32768 ~ 32767]
%hd
int
[기본 정수 자료형]
4 byte. -(2^31) ~ (2^31) - 1
[-2147483648 ~ 2147483647]
%d or %i
long4 byte or 8 byte.%ld
long long8 byte. -(2^63) ~ (2^63) - 1%lld
float4 byte. 유효 자리수 6~7자리.
[부호: 1bit, 지수: 8bit, 가수: 23bit]
%f
double
[기본 실수 자료형]
8 byte. 유효 자리수 15~16자리.
[부호: 1bit, 지수: 11bit, 가수: 52bit]
%lf
long double8 byte 이상.%Lf

오버플로우(Overflow)

자료형이 표현 가능한 수를 넘어서는 경우.
그릇에 물을 너무 많이 따르면 넘쳐 흐르는 것과 같습니다.
N은 각 자료형의 크기. char는 8, int는 32를 대입.

char 자료형의 오버플로우 도식화.

ASCII(American Standarded Code for Information Interchange)

문자 형태의 데이터와 숫자 형태의 데이터 사이의 인코딩 규약 중 하나.
여러 인코딩 규약이 있으나, 그 중 가장 쉽고 대표적인 규약.
규칙 표는 [여기]를 참고하시면 됩니다.
어쨋든 컴퓨터에 값이 저장되기 위해서는 숫자 형태여야 한다는 점을 기억합시다.

유니코드

 - 과거에는 ASCII, EUC-KR 등등 각 나라마다 다른 문자 인코딩들이 존재.
 - 이는 서로 호환되지 않아 다국어 지원에 문제가 생겼습니다.
 - 전세계 모든 문자를 표현 및 처리하기 위해 만들어진 문자 인코딩이 유니코드(Unicode)
 - 유니코드에는 UTF-8, UTF-16, UTF-32가 있음.

댓글

이 블로그의 인기 게시물

내일배움캠프 사전캠프 - 사전캠프설 연휴 커피 파밍 이벤트 작품 [ EXTREMITY ]

내일배움캠프 29일차 - 커리어데이 2일차 : 클라이언트 프로그래머로서 포트폴리오, 입사준비팁