반응형

** 절대 이해하려 들지말고 참조형으로만 쓴다 ** 



%m.nf를 사용하면 전체 m자리를 표현하고 소수 n 자리까지 표현해준다.

 

%md의 의미는 전체 자릿수를 m자리를 확보하여 출력하라는 의미이며, 

 

%-md의 의미는 전체 m자리를 확보하여 왼쪽에 출력하라는 의미이다.

 

 개행 문자

기능 설명 

 \n

 new line 즉, \n을 만난 위치에서 줄바꿈 수행

 \t

 커서의 위치를 수평으로 이동. 즉, tab 간격만큼 띄우라는 의미

 \v

 커서의 위치를 수직으로 이동

 \a (\7)

 벨소리를 내라는 의미

 \b

 뒤로 한칸 이동(back space 의미)

 \f

 프린트 용지를 다음 페이지로 넘김(form feed의 의미)

 \r

 현 라인의 맨처음으로 이동(carriage return의 의미)

 \\

 back slash 나타냄

 \o###

 8진수(###은 8진수 값을 의미)

 \x###

 16진수(###은 16진수 값을 의미)

 \?

 ? 표시

 \'

 ' 표시

 \"

 " 표시

 

 

 

 

 데이터형

16bit 컴퓨터

 32bit 컴퓨터

 값의 범위

 int

 short

 long 

 16bit

 16bit

 32bit

 32bit

 16bit

 32bit

 -32768 - 32767

 -32768 - 32767

 -2147483648 - 2147483647

 unsigned

 unsigned short

 unsigned long

 16bit

 16bit

 32bit

 32bit

 16bit

 32bit 

 0 - 65535

 0 - 65535

 0 - 4294967295

 char

 unsigned char

 

 float

 double

 8bit

 8bit

 

 32bit

 64bit

 8bit

 8bit

 

 32bit

 64bit

 -128 - 127

 0 - 255

 

 -3.4E + 38 - 3.4E +38

 -1.7E + 308 - 1.7E + 308

 

 

 

 

 

  부호 비트

  데이터 비트 

  데이터 비트 

  데이터 비트

  데이터 비트

  데이터 비트

  데이터 비트

  데이터 비트

  데이터 비트

  데이터 비트

  데이터 비트

 

** 여기서 unsigned하면 부호비트도 데이터 비트로 변환되어 더 많은 양의 수를 표현할 수 있게 된다. ( 2배 ) 

 


int의 경우는 사용되는 컴퓨터에 따라 메모리 할당 범위가 다르므로 수의 범위도 달라진다.


그러므로 호황성을 고려하여 컴퓨터의 기종에 관계없이 같은 크기를 차지하는 short이나 long를 int 대신 프로그램에서 사용하기도 한다.

 

즉, int가 4바이틀르 차지하는 컴퓨터에서는 short를 사용함으로써 2바이트로 처리를 할 수가 있다.

 

물론 int가 2바이트인 컴퓨터에서는 short와 int가 동일한 2바이트를 사용한다.

 

long은 1워드가 32비트인 컴퓨터에서는 int와 동일하지만, 일반적으로 1워드가 16비트인 컴퓨터에서는 int의 메모리 2배 크기를 점유한다.


일반적으로 int의 범위를 넘는 정수 데이터 취급 시는 long을 사용한다.




long a = 5000l;

long b = 5000L;

 

이처럼 long데이터 형은 값의 맨 뒤에 l 또는 L을 붙여서 long형 정수값이라는 것을 의미하게 하여야 한다.

 

또한 long형 데이터의 출력을 할 때는 %ld를 사용한다.

 

 

 

double형은 float형보다 2배의 정밀도를 가진 실수형 표현이 가능하며, 메모리 영역도 float형의 2배인 64비트를 차지하게 된다.

 

물론 double형의 데이터 출력 시는 %lf를 사용한다.

반응형