Search

string

#include <iostream> #include <algorithm> #include <vector> #include <string> using namespace std; int main() { string a = "love is"; a += " pain!"; a.pop_back(); cout << a << " : " << a.size() << '\n'; cout << char(*a.begin()) << '\n'; cout << char(*(a.end() - 1)) << '\n'; a.insert(0, "test "); cout << a << " : " << a.size() << '\n'; a.erase(0, 5); cout << a << " : " << a.size() << '\n'; auto it = a.find("love"); if (it != string::npos) cout << "있습니다." << '\n'; cout << string::npos << '\n'; cout << a.substr(5, 2) << '\n'; } /* += 문자열에서 문자열을 더할 때 보통 += 를 써서 문자열 또는 문자를 더한다. push_back()라는 메서드가 있지만 이는 문자 밖에 더하지 못한다. begin() 문자열의 첫번째 요소를 가리키는 이터레이터를 반환 end() 문자열의 마지막 요소 그 다음을 가리키는 이터레이터를 반환 이 둘은 vector, array, 연결리스트, 맵, set 에서도 존재 size() 문자열의 사이즈를 반환 O(1)의 시간 복잡도 insert(위치, 문자열) 특정 위치에 문자열 삽입 O(n) erase(위치, 크기) 특정 위치에 크기만큼 문자열 지우기 pop_back() 문자열 끝 지우기. find(문자열) 특정 문자열을 찾아 위치 반환. 해당 문자열을 못 찾을 경우 string::npos를 반환 string::npos 는 size_t 타입의 최대값을 의미. substr(위치, 크기) 특정 위치에서 크기만큼의 문자열을 추출 reverse() 문자열 string은 지원하진 않지만, algorithm 사용하면 할 수 있음. reverse(a.begin(), a.end()); 과 같이 사용하면 됨. */
C++
복사