문자와 문자열

이승덱·2021년 7월 21일
0

CPP

목록 보기
3/70
#include <iostream>

using namespace std;

//문자와 문자열

//bool은 그냥 정수지만, 참/거짓을 나타내기 위해 사용함.

//사실 char도 마찬가지, 그냥 정수지만 '문자' 의미를 나타내기 위해 사용

//char: 알파벳 / 숫자 문자를 나타낸다.

//wchar_t : 유니코드 문자를 나타낸다

//ASCII(American Standard Code for Information Interchange)

//'문자'의 의미로 작은 따옴표 '' 사용함

char ch = 'a';

char ch2 = '1';

char ch3 = 'a'+1;

//국제화 시대에는 영어만으로 서비스 할 수 없다.

//전 세계 모든 문자에 대해 유일 코드를 부여한 것이 유니코드(unicode)

//참고) 유니코드에서 가장 많은 번호를 차지하는게 한국어/중국어

//유니코드는 표기 방식이 여러가지가 있다. 대표적으로 UTF8 UTF16

//UTF8

//-알파벳, 숫자 1바이트(아스키와 동일0

//-유럽 지역의 문자는 2바이트

//-한글, 한자 등 3바이트

//UTF16

//-거의 대부분의 문자가 2바이트로 표현됨

//-아주 예외적인 고대문자면 4바이트로 표현(무시해도 됨)

wchar_t wch = L'안'; //UTF16으로 저장됨

//Escape Sequence

//표기하기 애매한 단어를 표현

//\0 = 아스키코드0 = NULL

//\t = 아스키코드9 = tab

//\n = 아스키코드10 = LineFeed (한줄 아래로)

//\r = 아스키코드13 = CarriageReturn (커서<<)

//\' = 작은따옴표를 표현할 수 있다.

//문자열

//문자들이 열을 지어서 모여 있는 것(문자 배열)

//정수 (1~8바이트) 고정 크기

//문자의 경우 크기가 고정적이지 않음

//NULL(아스키코드 0, \0) 이 있어야 문자열의 끝을 알 수 있음.

int main()

{

 char str[] = { 'h','e','l','l','o','\0' };

 char str2[] = "HELLO"; //크기가 6인 이유 => 자동으로 마지막에 NULL값이 잡혀있음

 cout << ch << endl;

 cout << ch2 << endl;

 cout << ch3 << endl;

 //cout은 char 전용이기 때문에 wchar_t는 출력 불가.

 cout << wch << endl;

 wcout.imbue(locale("kor"));

 wcout << wch << endl;

 cout << str << endl;

 cout << str2 << endl;

}
profile
공부 기록용 블로그입니다

0개의 댓글