아래 블로그를 참고해 내가 보기 쉽게 작성했다.
https://blockdmask.tistory.com/338
[C++] string 클래스, 문자열에 대해서 (총정리)
안녕하세요 BlockDMask 입니다.오늘은 C++의 std::string 클래스(문자열)에 대해서 세세 하게 알아볼것 입니다.예전 글을 보다가 제가 작성한 이 문서를 보게 되었는데요, 너무 내용이 빈약하다고 생
blockdmask.tistory.com
#include <string> 헤더 필요
해당 인덱스의 인자 반환(char)
문자열명[int 인덱스]
문자열명.at(int 인덱스)
at은 인덱스의 범위를 검사해 속도가 좀 더 느리지만 예외 뱉어줌
문자열의 맨 앞 인자 반환(char)
문자열명.front( );
문자열의 맨 뒤 인자 반환(char)
문자열명.back( );
문자열의 길이 반환(int, size_t)
문자열명.size( );
문자열명.length( );
문자열의 할당된 메모리 크기 반환(int, size_t)
문자열명.capacity( );
문자열 크기 조절(void)
문자열명.resize(size_t 크기);
문자열의 낭비되는 메모리 줄이기(void, C++11 이상)
문자열명.shrink_to_fit( );
들어올 문자열의 용량을 미리 할당(void)
문자열명.reserve(size_t 크기);
문자열 내용 지우기(void)
문자열명.clear( );
문자열 비어있는지 확인(비었으면 true, 아니면 false)
문자열명.empty( );
해당 인덱스부터 해당 길이만큼 잘라서 반환(string)
문자열명.substr(size_t 시작 인덱스=0, size_t 길이=npos);
(시작 인덱스의 default는 0, 길이의 default는 npos[-1])
문자열 비교(int, 같으면 0, 매개변수보다 사전순으로 작으면 음수, 크면 양수 반환)
문자열명.compare( );
문자열 내 해당 인덱스부터 일치하는 문자열이 있는지 확인(size_t, 일치하면 일치 부분의 첫 인덱스 반환)
문자열명.find(string 찾을 문자열, size_t 탐색 시작 인덱스=0);
문자열 맨 뒤에 해당 문자 추가(void)
문자열명.push_back(char 문자);
문자열 맨 뒤 문자 삭제(void)
문자열명.pop_back( );
해당 인덱스부터 해당 길이만큼 다른 문자열로 대체(string)
문자열명.replace(size_t 시작 인덱스, size_t 길이, string 대체 문자열);
string 문자열을 C의 문자열로 변환(char*, 맨 뒤에 널문자 추가)
문자열.c_str( );
문자열을 서로 참조해 교환(void)
swap(문자열명1, 문자열명2);
'Programming > C++' 카테고리의 다른 글
[C++] 문자열 치환 함수 regex_replace (0) | 2021.12.30 |
---|---|
[C++] STL 맵(map) 사용법 (0) | 2021.10.23 |
C++ STL 페어(pair) 사용법 (0) | 2021.10.22 |
C++ STL 벡터(vector) 사용법 (0) | 2021.10.22 |
C++ STL 덱(deque) 사용법 (0) | 2021.10.22 |