본문 바로가기
알고리즘

[코딩 테스트] C++ 코테용 문자열 팁

by 꽁이꽁설꽁돌 2024. 3. 28.
728x90
반응형

목차

     

    c++을 하다보면 문자열이 까다롭게 느껴진다.. 그래서 정리해 보았다.

    split이 필요한 경우

    #include <iostream>
    #include <vector>
    #include<algorithm>
    
    using namespace std;
    vector<string>v;
    
    
    void split(string input, string delimiter) {
    	long long int pos;
    	string token;
        //string::npos 문자열을 찾지 못했을 경우
    	while ((pos = input.find(delimiter)) != string::npos) {
    		token = input.substr(0, pos);   // 잘라내기
    		v.push_back(token);    // token 추가
    		input.erase(0, pos + delimiter.length());   //빼낸 것 지우기
    	}
    	v.push_back(input);   // 남은 문자 마저 넣기
    	
    }
    int main()
    {
    	string s = "안녕하세요 안녕히가세요 어서오세요", d = " ";
    	split(s, d);
    	for ( string a : v) cout << a << "\n";
    
    }

     

    문자열을 int로 바꿀 경우

    #include <string>
    
    using namespace std;
    
    // 문자열에서 숫자로 바꾸기
    int main(){
    	string str = "12";
        string str2 = "eleven";
        
        cout << atoi(str.c_str()) << "\n";   // 12반환
        cout << atoi(str2.c_str()) << "\n";   //숫자가 아니므로 0반환
    
    
    
    }
    반응형