오늘은 C++의 string 클래스에 대해서 공부해 보자.
우리는 보통 char형을 통해서 문자 데이터를 저장한다.
문자를 여러 개 저장하고 싶을 때는 배열을 생성하거나 포인터를 활용하는데, 오늘은 더 간단하게 데이터를 저장할 수 있는 string 클래스에 대해서 알아보자.
string 클래스
string 클래스는 아래와 같이 헤더 파일을 추가한 뒤 활용할 수 있다.
#include <iostream>
#include <string>
using namespace std;
int main()
{
string str;
}
헤더 파일로 <string>을 추가하고, 변수 선언은 string 변수명 형태로 하면 된다.
그럼 이번에는 데이터를 저장하여 초기화하는 방법을 알아보자.
string str = "Hello";
str에 "Hello"를 저장함으로써 초기화시킬 수 있다.
char형의 경우 배열로 생성해서 "Hello"를 저장할 수 있는데, string의 경우 한 번에 문자열을 저장할 수 있다.
마치 char형이 여러 개 모인 배열 같은 형태인 것이다.
cout << str[0] << endl;
cout << str[1] << endl;
cout << str[2] << endl;
cout << str[3] << endl;
cout << str[4] << endl;
H
e
l
l
o
str의 각 요소를 순서대로 출력해보면 위와 같이 나타난다.
각 요소는 char 형이다.
그러므로 string은 char 형의 모임이라고 볼 수 있다.
string 삽입하기 insert
문자열에 데이터를 삽입하는 방법을 알아보자.
str.insert(인덱스, "문자열");
insert 함수를 활용해서 데이터를 삽입한다.
원하는 위치의 인덱스를 작성하고 큰 따옴표 내에 삽입 할 문자열을 작성한다.
string str = "Hello";
str.insert(0, "Hi, ");
Hi, Hello
str의 0번째 인덱스에 "Hi, "를 삽입했다.
그 결과 Hi, Hello라는 결과가 출력된다.
string append
문자열에 데이터를 이어 붙이는 것이다.
string str1 = "H";
string str2 = "i";
cout << str1.append(str2);
Hi
str1에 "H"를 저장하고, str2에 "i"를 저장한 후 str1에 str2를 이어 붙이는 코드이다.
append 함수를 활용해서 수행할 수 있는 것이다.
실행 결과 Hi가 출력된다.
똑같은 결과를 '+' 기호로도 표현할 수 있다.
string str1 = "H";
string str2 = "i";
cout << str1+str2;
str1과 str2를 '+' 기호로 이어 붙일 수 있다.
결과는 위의 코드와 동일하게 나타난다.
오늘은 string 클래스에 대해서 공부했다.
string 클래스를 활용하기 위한 헤더 파일과 여러 가지 함수에 대한 이해를 하면서 코드를 작성해 보면 좋겠다.
특히 string 클래스의 각 구성 요소는 char형 데이터로 되어 있다는 점과, 인덱스를 통해 각 구성 요소를 출력할 수 있다는 점을 활용해서 코드 작성 연습을 하면 좋겠다.
'C++' 카테고리의 다른 글
[C++] STL next_permutation을 공부하자 (0) | 2025.01.03 |
---|---|
[C++] STL vector를 공부하자 (삽입, 삭제, 정렬) (0) | 2025.01.02 |
[C++] STL Map을 공부하자 key, value 개념 (0) | 2024.12.30 |
[C/C++] 순열과 조합 알고리즘 구현하기 4 (0) | 2024.12.28 |
[C/C++] 순열과 조합 알고리즘 구현하기 3 (1) | 2024.12.26 |