Search

string::npos (npos의 의미)

생성일
2023/02/11 08:00
태그
C++

string::npos (npos의 의미)

npos

npos : size_type 으로 정의된 특수값
static const size_type npos = -1;
C++
복사
string::npos는 -1값을 가지는 상수
find() 함수에 의해서 found 되지 못하는 경우 npos 값이 리턴

string::find, string::npos 단어 존재 여부 확인

string형의 데이터에서 어떤 단어가 존재하는지 찾을 때 find와 npos를 사용한다

find

문자열 앞에서부터 검색
검색 문자열이 시작되는 위치 반환
검색 문자열이 없으면 string::npos(4294967295) 반환
#include <string> #include <iostream> using namespace std; int main() { string s = "hello my name is jun"; if (s.find("me" == string::npos) { cout << "X" << '\n'; } else { cout << "O" << '\n'; } return 0; }
C++
복사
s.find(”me”)
s 라는 문자열에서 “me” 라는 문자 시작 위치를 찾는데, 만약 찾지 못하면 string::npos(-1)를 반환한다
즉, s.find(”me” == string::npos)의 경우, npos가 반환되었으므로 string s에 “me”가 없다는 뜻