Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 문자열을 int로 구문 분석하는 방법은 무엇입니까?


문자열 스트림을 사용하여 C++의 int를 int로 구문 분석할 수 있습니다. 이 방법에서 약간의 오류 검사를 수행해야 합니다.

예시

#include<iostream>
#include<sstream>
using namespace std;

int str_to_int(const string &str) {
   stringstream ss(str);
   int num;
   ss >> num;
   return num;
}

int main() {
   string s = "12345";
   int x = str_to_int(s);
   cout << x;
}

출력

이것은 출력을 줄 것입니다 -

12345

새 C++11에는 이를 위한 함수가 있습니다. stoi(문자열을 int로), stol(문자열을 long으로), stoll(문자열을 long으로), stoul(문자열을 unsigned long으로) 등

예시

다음과 같이 이러한 기능을 사용할 수 있습니다 -

#include<iostream>
using namespace std;

int main() {
   string s = "12345";
   int x = stoi(s);
   cout << x;
}

출력

이것은 출력을 줄 것입니다 -

12345