문제풀이(Problem Solving)/C++ 문제풀이에 유용한 것들

문자열 <- >정수 변환 string to int, int to string

게임이 더 좋아 2021. 6. 7. 16:40
반응형
728x170

string to int, int to string

<string> 을 include 해야 한다.

stoi()의 예시다.

 

// stoi example
#include <iostream>   // std::cout
#include <string>     // std::string, std::stoi

int main ()
{
  std::string str_dec = "2001, A Space Odyssey";
  std::string str_hex = "40c3";
  std::string str_bin = "-10010110001";
  std::string str_auto = "0x7f";

  std::string::size_type sz;   // alias of size_t

  int i_dec = std::stoi (str_dec,&sz);
  int i_hex = std::stoi (str_hex,nullptr,16);
  int i_bin = std::stoi (str_bin,nullptr,2);
  int i_auto = std::stoi (str_auto,nullptr,0);

  std::cout << str_dec << ": " << i_dec << " and [" << str_dec.substr(sz) << "]\n";
  std::cout << str_hex << ": " << i_hex << '\n';
  std::cout << str_bin << ": " << i_bin << '\n';
  std::cout << str_auto << ": " << i_auto << '\n';

  return 0;
}

 

결과

2001, A Space Odyssey: 2001 and [, A Space Odyssey]
40c3:  16579
-10010110001: -1201
0x7f: 127

당연하게도

returns the converted integral number as an int value.

int 값을 반환한다.

 

물론 다른 자료형도 가능하다.

 

반대는 거의 모든 숫자가 문자열로 표현이 가능하다.

당연히 

string object containing the representation of val as a sequence of characters.

문자열을 반환한다.

 

참고로 문자열 역정렬할 때 reverse() 함수정도는 알고 있자.

얘는 <algorithm> 파일 include 해야 한다.

 

728x90
반응형
그리드형