[C, C++] 자료형

성현씨·2024년 2월 14일
0

C / C++

목록 보기
1/15

◾ 자료형

자료형이란 변수를 데이터 형식을 지정해주는 것이다.
크기 단위 = byte 를 사용한다.

-> 1byte = 8bit 로 나타내는데 1bit는 0과1로 나타낼 수 있다.

int i = 0;

-> int = 자료형을 나타낸다.
-> i = 변수명을 나타낸다. (마음대로 정해도 상관없음)

자료형은 정수형과 실수형으로 나뉜다.

◾ 정수형

정수형의 종류는 char(1), short(2), int(4), long(4), long long(8) 등이 있다.

	// 1byte 양수 표현
	// 0 ~ 255
	unsigned char c = 0;
	c = 0;
	c = 255;
	c = 256;

-> unsigned 를 사용하면 오직 양수만 사용하겠다고 선언하는 것이다.
-> 그러므로 0 ~ 255 까지 나타낼 수 있다.
-> 256일 경우 -1이 나온다. 왜냐하면 char은 1byte로 8칸을 넘어서기 때문에 ?

	// 1byte 양수, 음수 둘다 표현
	// -128 ~ -1,  0 ~ 127
	char a = 0;
	a = 255;

-> 자료형 앞에는, signed 가 생략되어 있다. 그러므로 양수와 음수 둘 다 사용 가능하다.

✳ 음의 정수 찾기(2의 보수법)

// 대응되는 양수의 부호를 전환 후, 1을 더한다. 
// 0 0 0 0 0 0 1 0  = 2     -----
// 1 1 1 1 1 1 0 1  + 1         ㅣ  + 더해주기
// 1 1 1 1 1 1 1 0  = -2    -----
// 0 0 0 0 0 0 0 0

-> 이렇게 하면 쉽게 찾을 수 있다.

◾ 실수형

실수형 종류는 float(4), double(8) 등이 있다.
실수형은 정수표현 방식과 다른데 실수 표현방식은 정밀도에 의존한다.
따라서 double(8) 자료형이 float(4)보다 더 아래의 소수점까지 정확하게 표현이 가능하다.

float f = 10.2415f + (float)20;     // 안 적어줘도 자동으로 변환해주지만 명시적으로 변환하자

-> 정수는 정수끼리, 실수는 실수끼리 연산하되, 두 표현방식의 피 연산자가 연산될 경우 명시적으로 반환하자
-> 실수를 상수로 적을 경우 소수점 뒤에 f 를 붙이면 float 자료형으로, f 를 붙이지 않으면 double 자료형으로 간주한다.

profile
순수청년

0개의 댓글