: 문자열을 다루는 자료형.
C++ 환경에서 string 데이터 타입을 사용하기 위해서는, 'string' 헤더 파일을 include해야 한다.
아래와 같이 문자열 레터럴을 이용하여 선언이 가능하다.
string str = "Hello, world!";
또한 += 연산자를 이용하여, 문자열을 후위에 붙일 수도 있다.
str+=" I'm Mayo!";
혹은 + 기호를 사용하여, 스트링과 스트링을 결합하여 새로운 스트링을 메모리에 할당하는 것도 가능하다.
string str1 = "Hello, world!";
string str2 = " I'm mayo!";
string str3 = str1 + str2;
- length(): 문자열의 길이를 반환한다.
- empty(): 문자열이 비어있는지 확인한다.
- clear(): 문자열을 비운다.
- insert(str): 지정된 위치에 문자열 또는 문자를 삽입한다.
- erase(): 지정된 위치에서부터 지정된 개수만큼 문자열을 제거한다.
- replace(pos, count, str): 지정된 범위의 문자열을 다른 문자열로 대체한다.
- substr(pos, count): 지정된 범위의 문자열을 반환한다.
pos 인덱스부터 count개의 문자로 이루어진 하위 문자열을 반환. pos는 하위 문자열의 시작 인덱스를 지정하며, count는 하위 문자열의 길이를 지정한다.- find(str, pos): 문자열 내에서 특정 문자열 또는 문자를 검색하고, 그 위치를 반환한다.
(찾지 못한 경우 string::npos를 반환한다.)- rfind(str, pos): 문자열 내에서 특정 문자열 또는 문자를 역순으로 검색하고, 그 위치를 반환한다.
(찾지 못한 경우 string::npos를 반환한다.)- compare(str): 문자열을 비교합니다. 비교 결과에 따라 0, 양수, 음수 값을 반환한다.
- '+' (덧셈 연산자): 두 개의 문자열을 이어붙인다.
예를 들어, 아래와 같이 사용할 수 있다.string a = "Hello, "; string b = "world!"; string c = a + b;
- '+=' (복합 대입 연산자): 문자열을 이어붙인다.
예를 들어, 아래와 같이 사용할 수 있다.string a = "Hello, "; a += "world!";
- '==' (등호 연산자): 두 개의 문자열이 같은지 비교한다.
같으면 true, 다르면 false를 반환합니다.- '!=' (부정 연산자): 두 개의 문자열이 다른지 비교한다.
같으면 false, 다르면 true를 반환합니다.- '<, <=, >, >=' (부등호 연산자): 두 개의 문자열을 사전순(오름차순)으로 비교한다.
예를 들어, "apple" < "banana"는 true를 반환한다.- '[]' (인덱스 연산자) : 배열과 마찬가지로, 특정 인덱스에 위치한 문자에 직접 접근이 가능하다. 예를 들어, 아래와 같이 사용할 수 있다.
stirng str = "apple" std::cout << str[0] << endl; //(a가 출력된다.)