알고리즘/기타 개념

[C++] string의 변환

천니 2021. 8. 27. 18:33
728x90

string to char , char to string 변환

 

1. string to char

char ch[10];

string s="Hello";

strcpy(ch, a.c_str());

cout<<ch;

c_str로 string 변수를 char로 변환

strcpy로 ch변수에 변환값 저장

 

2. char to string

char ch[10] = {"Oh my god"};
string s(ch);
cout <<s;

 

string 선언할 때 괄호 안에 char 변수를 넣어주면 된다. 

 

 


string s = "abcde";

char a = s[0];

cout<<a;

또한 이런식으로 string에 있는 값의 일부를 char 로 넘겨줄 수도 있다! 

 

문제를 풀다가 개념을 정리하고 싶어 작성한다ㅎㅎ

 


string to int , int to string

 

1. int to string

 

to_string 함수

-> 숫자 타입의 데이터를 스트링 타입으로 변경하도록 하는 함수이다. 

to_string(숫자); 이런식으로 사용하면 된다!

 

#include<iostream>
#include<string>
using namespace std;
 
int main(void)
{
	int num=10;
	
    string s = to_string(num); // int 형 숫자 10을 string 으로 변환
}

 

2. string to int

 

stoi 함수

-> string 타입의 데이터를 int 타입으로 변경하도록 하는 함수!

stoi(스트링); 이런식으로 사용하면 된다!

 

#include<iostream>
#include<string>
using namespace std;
 
int main(void)
{
	string s = "123";
    
    int num = stoi(s);
}

substr 함수

 

문제를 풀다가 정리하고 싶어서 작성한다.

 

형태

basic_string substr(size_type pos = 0, size_type count = npos) const;

문자열의 일부를 리턴한다.

 

문자열의 pos 위치부터 count 길이 만큼의 문자열을 리턴한다. 만약에, 인자로 전달된 부분 문자열의 길이가 문자열보다 길다면, 그 이상을 반환하지 않고 문자열의 끝까지만 리턴한다. 

 

pos : 첫 번째 문자의 위치

count : 부분 문자열의 길이

 

#include <iostream>
#include <string>

using namespace std;

int main()
{
	string s = "12333";
	string a = s.substr(1, 3); // 233 반환

	cout << a;
}