레필리아
'컴퓨터공학 기초/C.C++' 카테고리의 글 목록 (4 Page)

컴퓨터공학 기초/C.C++

컴퓨터공학 기초/C.C++

C++ 문자열 자르기 (string)

원본 문자열과 자를 문자열을 매개변수로 넣으면 string* 으로 반환된다. ex) string* str = strSplit("hi,hello", ","); => [0] : hi [1] : hello

컴퓨터공학 기초/C.C++

strtok() 함수를 이용한 연속 토큰 추출

아래는 strtok() 함수를 이용해서 토큰을 가져오는 코드이다. strtok()은 입력문자열(첫번째인자)에서 구분자문자(두번째인자)로 구분될 수 있는 토큰을 찾아 준다. strtok()를 한번 호출하면 입력문자열의 첫번째 토큰을 찾아준다. 그렇다면 두번째, 세번째... 문자열의 끝까지 토큰을 계속해서 얻어오려면 어떻게 해야 될까? 아래 코드처럼 연속 토큰을 추출하려면 처음 strtok() 로 첫번째 토큰을 찾고 그 다음부터는 strtok(NULL, 구분자)로 호출하여 연속되는 토큰을 계속 찾을 수 있다. 여기서 한가지 의문의 생긴다... 입력문자열에 NULL 값을 집어넣는데 어떻게 토큰을 계속 찾을 수 있을까? strtok() 내부에서는 토큰을 찾고 찾은 토큰 바로 뒤의 문자를 NULL 로 만들어 버린..