1. 리터럴의 개념
C++ 프로그래밍 언어에서 우리는 고정된 값을 나타내기 위해 리터럴을 사용한다. 즉, 상수 값을 나타내는 데 사용되는 기본 요소인 것이다. 이러한 상수에는 숫자, 문자, 문자열 등이 포함될 수 있다. 리터럴을 이해하고 사용하는 것은 데이터 할당, 계산 및 데이터 표현에 C++에서 필수적이라 할 수 있다. 이들은 일반적으로 할당 작업에서 오른쪽 피연산자로 표시된다. C++에서의 리터럴 종류로는 위 그림에서 알 수 있듯, ① 정수 리터럴 ② 부동소수점 리터럴 ③ 문자 리터럴 ④ 문자열 리터럴 ⑤ 논리 자료형 리터럴이 존재한다.
2. 정수 리터럴(Interger Literal)
C++의 정수 리터럴은 분수나 소수 부분이 없는 정수를 나타내는 상수다. 그것들은 양수일 수도 있고 음수일 수도 있고 십진법, 팔진법, 16진법과 같은 다른 기수를 가질 수도 있다.
예시:
int integerLiteral = 42;
예시2:
// C++ Proram to illustrate the use of integer literals
#include <iostream>
using namespace std;
int main()
{
int age = 35; // An integer literal
cout << "Age: " << age << endl;
return 0;
}
출력:
Age: 35
그런데 C++에서 정수 리터럴은 위에서도 한 번 논했듯, 그 안에서 또 다양한 유형으로 분류할 수 있다.
① 10진수 리터럴(접두사 없음)
십진 리터럴은 접두사가 없는 10진법의 정수를 나타낸다.
예시:
int decimal = 42;
② 8진수 리터럴(접두사 0)
8진수 리터럴은 베이스 8의 정수를 나타내며, 0 접두사 앞에 붙는다.
예시:
int octal = 052; // 42 in decimal
③ 16진수 리터럴(접두사 0x or 0X)
16진수 리터럴은 베이스 16의 정수를 나타내며, 그 앞에 0x 또는 0X 접두사가 붙는다.
예시:
int hexadecimal = 0x2A; // 42 in decimal
④ 2진 리터럴(접미사 b or B)
이진 리터럴은 기본 2의 정수를 나타내며, 접미사가 b 또는 B일 수 있다.
예시:
int binary = 0b101010; // 42 in decimal
⑤ long 정수 리터럴(접미사 l or L)
긴 정수 리터럴은 l 또는 L과 접두사를 붙여 long int 유형임을 나타낼 수 있다.
예시:
long int longInteger = 42L;
⑥ long long 정수 리터럴(접미사 ll or LL)
long long 정수 리터럴은 l 또는 LL과 접두사를 붙여 long long int 유형임을 나타낼 수 있다.
예시:
long long int longLongInteger = 42LL;
⑦ 부호가 없는 정수 리터럴(접미사 u or U)
부호가 없는 정수 리터럴은 u 또는 U와 접두사를 붙여 부호가 없는 int 형식임을 나타낼 수 있다.
예시:
unsigned int unsignedInt = 42U;
3. 부동소수점 리터럴(Float Literal)
C++의 부동소수점 리터럴은 분수 또는 소수점 부분이 있는 숫자를 나타내는 상수다. 이것들은 단정밀도 또는 배정밀도 값일 수 있다.
정수 리터럴과 마찬가지로, 부동소수점 리터럴도 접미사와 f를 각각 사용하여 double 또는 float으로 정의할 수 있다. C++ 컴파일러는 기본적으로 모든 분수 수를 double 유형으로 간주한다.
예시:
double floatLiteral = 3.14;
예시2:
// C++ program to illustrate the floating point literals
#include <iostream>
using namespace std;
int main()
{
// float literal
float e = 2.7f;
// double literal
double pi = 3.14;
// long double literal
long double g = 9.8L;
cout << "The Value of pi: " << pi << endl;
cout << "The value of e: " << e << endl;
cout << "The value of g: " << g << endl;
return 0;
}
출력:
The Value of pi: 3.14
The value of e: 2.7
The value of g: 9.8
4. 문자 리터럴(Character Literal)
C++의 문자 리터럴은 개별 문자 또는 이스케이프 시퀀스를 나타내는 상수다. 이들은 단일 따옴표로 둘러싸여 있으며 이를 사용하여 단일 문자를 나타낼 수 있다.
* 이스케이프 시퀀스: 백슬래시(\) 뒤에 한 문자나 숫자 조합이 오는 문자 조합
예시:
char charLiteral = 'A';
예시2:
// C++ program to illustrate the use of charater literal
#include <iostream>
using namespace std;
int main()
{
char grade = 'A';
cout << "Grade: " << grade << endl;
return 0;
}
출력:
Grade: A
5. 문자열 리터럴(String Literal)
C++의 문자열 리터럴은 문자의 시퀀스를 나타내는 상수다. 문자는 큰 따옴표로 둘러싸여 있으며, 텍스트 또는 문자 시퀀스를 나타내는 데 사용할 수 있다.
예시:
const char* stringLiteral = "Hello, World!";
예시2:
// C++ program to illustrate the string literals
#include <iostream>
using namespace std;
int main()
{
const char* message = "Hello, Gutilog!";
cout << "Message: " << message << endl;
return 0;
}
출력:
Message: Hello, Gutilog!
6. 논리 자료형 리터럴(Boolean Literal)
논리 자료형 리터럴은 진리 값을 나타내며, 가능한 값은 True와 False 두 가지뿐이다. 이 값들은 논리 자료식과 논리 연산에 사용된다.
예시:
// C++ program to illustrate the use of boolean literal
#include <iostream>
using namespace std;
int main()
{
// using boolean literals
bool isTrue = true;
bool isFalse = false;
if (isTrue) {
cout << "is True is true" << endl;
}
else {
cout << "isTrue is false" << endl;
}
if (isFalse) {
cout << "isFalse is true" << endl;
}
else {
cout << "isFalse is false" << endl;
}
return 0;
}
출력:
isTrue is true
isFalse is false
'C++' 카테고리의 다른 글
C++ if문 총정리 (0) | 2024.03.08 |
---|---|
C++ 데이터 타입 총정리 (0) | 2024.02.21 |
C++ 정적 키워드 총정리 (0) | 2024.02.20 |
C++ 변수(Variables)의 범위- 지역, 전역 총정리 (0) | 2024.02.17 |
C++ 변수(Variables) 총정리 (1) | 2024.02.17 |