728x90
728x90
SMALL
Chapter2. 변수와 기본 자료형
리터럴 상수
8진수 : 0
int x = 012;
- int x = 012;
ο 8진수로 12라는 것.
ο 십진수로 18 + 21 = 10
16진수 : 0x
int x = 0x12;
- int x = 0x12;
ο 16진수로 12라는 것.
ο 십진수로 116 + 21 = 18
2진수 : 0b
int x = 0b1011;
- int x = 0b12;
ο 2진수로 1011 라는 것.
ο 십진수로 18 + 04 + 12 + 11 = 11
가독성 높이기
int x = ob1011'1011'1000'
- ' 로 가독성을 높여줄 수 있다.
ο C++부터 허용. ' 는 읽지 않는다.
심볼릭 상수
상수는 심볼릭하게
- const double gravity{9.8};
ο 중력 가속도는 9.8 값으로 고정된 상수이다.
ο 중력 가속도로 어떤 연산을 할 때 * 9.8 하는 것 보단
■ 중력 가속도 의미가 사는 * gravity 라고 하는게 낫지 !
■ 이런게 심볼릭 상수
■ 상수 리터럴로 그냥 쓰기보단 이런 기호적 상수 자주 쓰기
ο const 상수이므로 값을 바꿀 수 없다. - 함수 매개변수에도 const를 붙이는 경우가 많다.
ο 파라미터 값을 변형시키지 않았으면 하는 마음에서. - C++에선 #define 매크로 잘 쓰지 않는다. 디버깅시 위아래를 왔다 갔다 해야하기 때문에
ο 매크로보다는 const int PRICE = 30; 같은 기호적 상수를 더 많이 쓴다.
#define PRICE 30 // 보다는
const int PRICE = 30; // 이걸 더 추천 in C++
- 이러한 심볼릭 상수들은 헤더파일에 모아놓는게 좋다.
constexpr
constexpr int my_const(123);
constexpr
- 컴파일 타임에 값이 완전히 결정됨을 알려주는 키워드,
int number;
cin >> number;
constexpr int my_const(number); // error !
- number값은 콘솔창 입력을 통해 런타임에 결정되는 값이므로
ο 컴파일 타임에 결정 될 수 없는 값이다.
■ 오류 !
728x90
300x250
LIST
'C │ C++ │ C# > C++' 카테고리의 다른 글
C++ Chapter 3.2 : 이진수 (0) | 2023.08.17 |
---|---|
C++ Chapter 3.1 : 연산자 종류 정리 (0) | 2023.08.16 |
C++ Chapter 2.6 : 문자형 char type (0) | 2023.08.15 |
C++ Chapter 2.5 : Boolean 자료형과 조건문 if (0) | 2023.08.15 |
C++ Chapter 2.4 : 부동소수점수 floating point numbers (0) | 2023.08.14 |