떵호
seongho'Dev
떵호
전체 방문자
오늘
어제
  • 분류 전체보기 (116)
    • 회고 (2)
    • Algorithm (74)
      • 프로그래머스 (65)
      • 백준(BOJ) (2)
      • Note (7)
    • 기술독서 (25)
      • Clean Code (11)
      • 자바의 정석 (8)
      • 대규모 시스템 설계 기초 (6)
    • Computer Science (1)
      • Operating System (1)
    • Typescript (1)
    • JAVA (0)
    • Spring (6)
      • JPA (6)
    • AWS (2)
    • Git (2)
    • Etc (2)

블로그 메뉴

  • github

티스토리

태그

  • 구현
  • 완전탐색
  • Clean Code
  • 자바의 정석
  • 카카오 코테
  • 알고리즘
  • 프로그래머스
  • 코딩테스트 준비
  • JPA
  • 클린코드
hELLO · Designed By 정상우.
떵호

seongho'Dev

[C++] 코테 준비 -  문자열 분리
Algorithm/Note

[C++] 코테 준비 - 문자열 분리

2022. 2. 8. 20:50
728x90

카카오 코딩테스트 문제를 풀다보면 문자열을 분리하여 푸는 문제가 많다.
c++은 따로 문자열 분리하는 STL이 존재하지 않아 split을 구현해야 한다. 그래서 문자열 처리할 때마다 검색해서 문제를 풀었는데 검색하는 것이

귀찮아서

내가 검색한 내용을 정리하기로 했다.

istringstream 과 getline() 함수 사용

istringstream을 사용하려면 sstream 헤더 파일을 선언해야 한다.

헤더 파일을 일일이 선언할 필요없는 bits/stdc++.h를 애용하자!

OSX bits/stdc++.h 적용 방법

 

Xcode bits/stdc++.h 사용하기

Xcode bits/stdc++.h 사용하기 터미널 창에 아래와 같이 입력 $ cd /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1 bits 디렉터리 생성하..

seongho96.tistory.com

반복문 이용

#include <string>
#include <iostream>
#include <sstream>

int main() {
    string as = "this,is,string";
    istringstream ss(as);
    string stringBuffer;
    while (getline(ss, stringBuffer, ',')) {
        cout << stringBuffer << " ";
    }
    return 0;
 }
 // output : this is string

getline()함수에 첫 번째 매개변수는 입력 스트림, 두 번째는 추출한 문자열을 저장할 변수, 세 번째는 구분자를 넣어준다.

출력스트림 이용

#include <string>
#include <iostream>
#include <sstream>

int main() {
    string as = "this is string";
    istringstream ss(as);
    string stringBuffer[3];

    ss >> stringBuffer[0] >> stringBuffer[1] >> stringBuffer[2];

    for (string s : stringBuffer) {
         cout << s << "\n";
    }
    return 0;
 }
 // output : this
 //          is 
 //          string

출력스트림을 이용해 추출한 문자열 변수를 위와 같이 사용한다.
⚠️ 주의
위 방법은 구분자가 공백일 때만 사용가능하다.

728x90
저작자표시 (새창열림)

'Algorithm > Note' 카테고리의 다른 글

[IntelliJ] 인텔리제이 단축키 (mac 기준)  (0) 2022.04.12
[Java] 코테 준비 - 클래스 객체 배열 정렬하기 - Comparable<E>  (0) 2022.04.10
[Java] 코테 준비 - binary to decimal과 decimal to binary  (0) 2022.02.20
[Java] Map for-each문 사용 방법  (0) 2022.02.08
Xcode bits/stdc++.h 사용하기  (0) 2022.02.08
    'Algorithm/Note' 카테고리의 다른 글
    • [Java] 코테 준비 - 클래스 객체 배열 정렬하기 - Comparable<E>
    • [Java] 코테 준비 - binary to decimal과 decimal to binary
    • [Java] Map for-each문 사용 방법
    • Xcode bits/stdc++.h 사용하기
    떵호
    떵호

    티스토리툴바