C++

C++ 변수

FFA 2021. 7. 31. 11:30
728x90

// 변수 (Variable)

1. 정의

- 데이터를 넣어두는 저장 공간

- 한 번 저장해놓으면 필요할 때 언제든 꺼내서 사용할 수 있다.

- 데이터의 종류(자료형)에 따라 각각 다른 형태로도 사용.

2. 선언과 초기화

- 중괄호 블록 안에서 이루어진다.

- 둘 이상의 변수를 선언할 경우, 자료형이 같으면 연속 선언이 가능하다.

- 변수를 사용하기 전에 원하는 값을 미리 대입해두는 것 => 초기화.

3. 자료형 (데이터 타입)

(1) 정수형 : 부호(+-)를 가지고 있으며, 소수점이 없는 수

1. int

- 연산의 기본 단위

- 가장 많이 사용하면서 처리 속도도 가장 빠르다.

- 메모리에 할당되는 크기는 4 byte

- 값의 저장 범위 : -21억 ~ 21억

- 변환 제어 문자는 %d

2. short

- 메모리를 적게 사용하나, int로의 변환 과정에서 느려질 수 있다.

- 메모리에 할당되는 크기는 2byte

- 값의 저장 범위 : -32,768 ~ 32,767

- 변환 제어 문자는 %d

3. long

- 사용할 필요가 없음. int형이 2바이트로 구현된 컴파일러에서 사용.

- 메모리에 할당되는 크기는 4byte

- 값의 저장 범위 : int형과 동일

- 변환 제어 문자는 %ld

4. unsigned 형 정수

- 정수형은 보통 양수와 음수 모두를 저장함

- 하지만 양수만 저장하면 2배 더 넓은 범위를 가질 수 있다.

- unsigned는 양수만 저장할 때에 자료형 앞에 붙여서 사용

- 변환 제어 문자는 %u, %lu(unsigned long)

(2) 실수형

- 소수나 지수가 있으며, 정수보다 훨씬 더 넓은

표현 범위를 가지는 수의 통칭

- 컴퓨터에서 실수 표현 방식에 오차를 가지고 있기 때문에,

표현 정도에 따라 출력되는 값이 변화한다.

- double의 값을 float에 집어넣으면 값이 잘려나간다.

- 각 자료형이 지원하는 범위 내의 값으로 입력하는 게 베스트.

- 프로그래밍에서는 정수형을 기본으로 한다.

필요한 경우에는 실수형을 사용해야한다.

- 실수형은 유효숫자가 많은 double을 우선으로 사용한다.

1. float

- 메모리에 할당되는 크기는 4byte

- 값의 저장 범위 : -3.4*10^38 ~ 3.4*10^38

- 소수점 이하 표현 범위 : 6자리

- 변환 제어 문자는 %f

2. double

- 메모리에 할당되는 크기는 8byte

- 값의 저장 범위 : -1.79*10^308 ~ 1.79*10^308

- 소수점 이하 표현 범위 : 14자리

- 변환 제어 문자는 %lf

(3) 문자형

- 작은 범위의 정수나 문자 하나를 표현

- 문자를 저장할 떄는 작은 따옴표('')를 사용

1.char

- 메모리에 할당되는 크기는 1byte

- 값의 저장 범위 : -128 ~ 127 또는 문자 1개

- 변환 제어 문자는 %c

* unsigned char

- 메모리에 할당되는 크기는 1byte

- 값의 저장 범위 : 0 ~ 255

- 변환 제어 문자는 %u

(4) 논리형

- 실생활에서 예/아니오 -> 다시 말해 참/거짓을 구분하려고 만든 자료형

- C++11 이전에는 c언어처럼 0인 값을 거짓,

0이 아닌 값을 참으로 인식했다.

- 그런데 C++11부터 bool이라는 새로운 타입이 생겼다.

- true/false로 구분하나, 실제 저장값은 1과 0

- C언어에서는 C99 이후부터 #include <stdbool.h> 추가로 사용가능

1.bool (boolean)

- 메모리에 할당되는 크기는 1byte

- 0 : false

- 1 : true

(5) const

- 변수를 선언하고 초기화할 때 자료형 앞에 const를 붙이면

초기화된 값을 바꿀 수 없다.

- const를 사용하면 그 이후에 값을 변경 할 수 없으므로

반드시 선언과 동시에 초기화해야만 한다.

- 값이 바뀌지 않는 데이터를 만드는 이 과정을 상수화(constant)라고 한다.

<예시>

const int a = 100;

(6) auto

- C++11부터 변수의 초기화 값에 맞춰서 해당 변수의 타입을 자동으로 추론

- 변수를 초기화할 때 특정 타입을 명시하는 대신,

- auto 키워드를 사용하여 타입을 자동으로 맞춰줄 수 있다.

(7) 예약어와 식별자

- 예약어(reserved word 또는 keyword) : 컴파일러와 사용 방법이 이미 약속된 단어 (int, float, bool..파란색으로 표시되는 것)

- 식별자(identifier) : 필요에 따라 만들어 쓰는 단어 (변수명)

< 식별자를 작성할 떄의 주의점 >

1. 알파벳 대소문자 A-Z & a-z, 숫자 0-9, _(underline) 으로만 작성

2. 변수명을 한국어 작성하지 말 것.

3. 변수명의 첫글자에 숫자가 올 수 없다.

4. 대문자와 소문자는 서로 다른 식별자로 인식한다.

5. 예약어는 식별자로 사용 할 수 없다.

6. 중간에 빈 칸(띄어쓰기)를 넣을 수 없다.

7. 하이픈(-) 사용불가.

8. 틸드(~) 사용불가.

9. 특수문자 사용불가.

728x90