프로그래밍/C++

자료형

FORHAPPy 2021. 9. 7. 17:10

<자료형>

자료형의 종류 : 정수 자료형, 실수 사료형, 문자 자료형, 논리 자료형 (참과 거짓을 따짐)

 

<자료형의 크기에 따른 종류>

1 Byte char (문자 자료형), bool (논리자료형)
2 Byte short (정수 자료형)
4 Byte int, long (정수 자료형), float (실수 자료형)
8 Byte long long (정수 자료형), double, long double (실수 자료형)

 

<unsigned, signed>

unsigned 음수를 사용하지 않는다. (이진법에서 맨 앞쪽 비트 까지 숫자를 표현하는데 사용한다.) 
signed defalt 값이다.

 

<char>

캐릭터 형이라고 부른다. 문자 자료형이지만 기본적으로 정수값을 저장한다.

(ASCII 코드표 에서 알아서 변환하여 저장)

char ch1 = 97;  cout << ch1 << endl;    -->  A가 출력
char ch2 = 'A';  cout << ch2 << endl;     --> A가 출력

 

<float>

실수 표현 방식을 float 이라 표현하는 이유는 부동소수점 방식을 사용하기 때문이다.

부동 소수점 방식의 장점은 풍부하게 소수점을 표현 할 수 있지만, 단점으로는 오차를 발생시킨다.

float f = 0.f;  로 표현하면  float 형태 4비트가 만들어 지지만,                         

float f = 0.1 로 표현하면 double 형태도 저장이 되어 공간이 낭비 된다.            

수소점이 소실을 막기 위해 가장 큰 double 형으로 저장되는 것이 디폴트 값이다.

 

 

<const : 값을 변경할 수 없게 상수화를 시킨다.>

 

변수를 상수화 시키면 반드시 선언과 동시에 초기화가 필요하다.

 

const int HP; 

HP = 100

이런식으로 쓰면 안되고,

const int HP = 100 이라고 작성

 

 

<리터럴 상수>

float f = 0.f;

리터럴 상수 - 그냥 문자 그대로의 상수. 지금 밑에있는 10과 0.f 이런 그냥 숫자들을 리터럴 상수라 한다.

 

컴퓨터는 어떠한 연산을 하기 위해선 메모리 공간에 데이터가 들어가 있어야 하는데 

리터럴상수는 애초에 메모리 공간을 가지고 있지가 않다. 

그러다보니 연산을 하는데 잠깐 메모리 공간을 빌려다 쓴다. (임시메모리)

'프로그래밍 > C++' 카테고리의 다른 글

형변환  (0) 2021.09.10
연산자  (0) 2021.09.07
변수  (0) 2021.09.04
기본적인 코드 분석(main, namespace, void, cout 등)  (0) 2021.09.04
소스파일(source file)에서 실행파일(executable file) 생성원리  (0) 2021.09.04