예제) 다양한 자료형의 출력
문자, 수치, 문자열과 같은 다양한 문자열을 출력하는 코드를 작성해 보도록 한다.
#include <iostream>
using namespace std;
int main()
{
cout << 'A' << '\n';
cout << "환영합니다 C++!\n";
cout << 123 << '\n';
return 0;
}
코드 내의 'A'와 "환영합니다 C++!", 123이란 특정의 문자와 수치의 표기를 C++에서는 리터럴(literal)이라고 한다. 다음과 같이 4개로 분류된다.
- 문자 리터럴
- 문자열 리터럴
- 수치 리터럴
- 논리 리터럴
문자 리터럴
1개의 문자 / 문자열의 2종류의 리터럴을 구별해서 취급한다. 1개의 문자는 문자 리터럴(character literal)이라 부른다.
'H'
'e'
이것은 위와 같이 ' '로 싸서 코드 내에 기술한다.
키보드로부터 입력할 수 없는 특수한 문자도 있는데 이와 같은 문자에 관해서는 \를 최초에 붙인 2개의 문자 쌍으로 [1문자분]을 나타낼 수 있다. 이것을 이스케이프 시퀀스(escape sequence)라고 한다.
에스케이프 시퀀스 | 의미 |
\a | 경고음 |
\b | 백스페이스 |
\f | 페이지 바꾸기 |
\n | 개행 |
\r | 복귀 |
\t | 수평 탭 |
\v | 수직 탭 |
\\ | \ |
\' | ' |
\" | " |
\? | ? |
\ooo | 8진수 ooo의 문자 코드를 가지는 문자(o는 0~7의 숫자) |
\xhh | 16진수 hh의 문자 코드를 가지는 문자(h는 0~9의 숫자와 A~F의 영문자) |
문자에 관해 사실은 컴퓨터의 내부에서는 문자도 수치로 처리된다. 이와 같이 각 문자의 모양에 대응하는 수치를 문자(character code)라고 한다. 문자 코드의 종류에는 ASCII, Unicode 등이 있다.
문자열 리터럴
문자 1문자에 대해 여러 개의 문자의 정렬을 문자열 리터럴(string literal)이라고 한다. C++에서는 문자열은 문자와 달리 ' '가 아니고 " "로 묶어서 기술한다. (배열에서 다시 배움)
수치 리터럴
수치에는 다음과 같은 종류가 있다.
- 정수 리터럴(integer literal) 1, 30, 199 등
- 부동 소수점수 리터럴(floating literal) 3.5, 3.14, 1,1414 등
수치의 리터럴은 ' '와 " "로 묶지 않고 기술하는 것에 주의 하도록 한다. 정수 리터럴은 8진수, 16진수로 수치를 표기할 수도 있다.
- 8진수 → 수치의 첫번째에 0을 붙인다.
- 16진수 → 수치의 첫번째에 0x를 붙인다.
예제) 10진수 이외의 표기
수치 리터럴을 10진수, 8진수, 16진수로 출력하는 코드를 작성해 보도록 한다.
#include <iostream>
using namespace std;
int main()
{
//10진수 이외의 표기를 사용한다.
cout << "10진수의 10은 " << 10 << "이다.\n";
cout << "8진수의 10은 " << 010 << "이다.\n";
cout << "16진수의 10은 " << 0x10 << "이다.\n";
cout << "16진수의 F는 " << 0xF << "이다.\n";
return 0;
}
출처: 박흥복, 서정희. 2015. C++ 프로그래밍 (초보자를 위한). 문운당
'개발 > C++' 카테고리의 다른 글
C++ 변수 (0) | 2022.02.17 |
---|---|
C++ 프로그래밍의 기본3 (0) | 2022.02.17 |
C++ 프로그래밍의 시작 (0) | 2022.02.15 |
C++ 프로그래밍의 기본 (0) | 2022.02.15 |
C++ 참조자 (0) | 2022.02.09 |