logo

C++에서 문자열을 정수로 변환

이 섹션에서는 C++ 프로그래밍 언어를 사용하여 주어진 문자열 데이터를 정수로 변환하는 다양한 방법에 대해 설명합니다. 특정 데이터를 다른 유형으로 변환해야 하는 상황이나 인스턴스가 있으며, 그러한 상황 중 하나는 프로그래밍에서 문자열을 int 데이터로 변환하는 것입니다.

예를 들어 '라는 숫자 문자열이 있습니다. 143 '라고 입력하고 이를 숫자 유형으로 변환하려고 합니다. 문자열을 정수로 변환하고 숫자 데이터를 143으로 반환하는 함수를 사용해야 합니다. 이제 C++ 프로그래밍 언어에서 문자열 데이터를 정수로 변환하는 데 도움이 되는 각 메서드를 알아 보겠습니다.

C++에서 문자열을 정수로 변환

C++ 프로그래밍 언어에서 문자열 데이터를 정수로 변환하는 다양한 방법입니다.

  1. 스트링스트림 클래스 사용
  2. Stoi() 함수 사용
  3. atoi() 함수 사용
  4. sscanf() 함수 사용

스트링스트림 클래스 사용

그만큼 문자열 스트림 숫자 문자열을 int 유형으로 변환하는 데 사용되는 클래스입니다. stringstream 클래스는 스트림 객체를 선언하여 문자열을 스트림 객체로 삽입한 후, 스트림을 기반으로 변환된 정수 데이터를 추출합니다. stringstream 클래스에는 (<>) 왼쪽 연산자에서 데이터를 가져오는 데 사용되는 '<>' 연산자가 있습니다.

C++ 프로그래밍 언어에서 문자열 데이터를 정수로 변환하기 위한 stringstream 클래스를 보여주는 프로그램을 만들어 보겠습니다.

영화 123 ~

프로그램1.cpp

 #include #include // use stringstream class using namespace std; int main() { string str1 = &apos;143&apos;; // declare a string int intdata; // declare integer variable /* use stringstream class to declare a stream object to insert a string and then fetch as integer type data. */ stringstream obj; obj &lt;&gt; intdata; // fetch integer type data cout &lt;&lt; &apos; The string value is: &apos; &lt;&lt; str1 &lt;&lt; endl; cout &lt;&lt; &apos; The representation of the string to integer type data is: &apos; &lt;&lt; intdata &lt;&lt; endl; return 0; } 

산출

 The string value is: 143 The representation of the string to integer type data is: 143 

위 프로그램에서는 stringstream 클래스를 사용하여 obj 객체를 생성하고 문자열 데이터를 정수로 변환하는 데 도움이 됩니다. 그런 다음 '<>' 연산자를 사용하여 변환된 문자열을 obj에서 숫자 데이터로 추출합니다.

sscanf() 함수 사용

sscanf() 함수는 주어진 문자열을 정수와 같은 지정된 데이터 유형으로 변환합니다.

통사론

 sccanf ( str, %d, &amp;intvar); 

sscanf() 함수에는 char 문자열(str), 데이터 지정자(%d) 및 변환된 문자열을 저장할 정수 변수(&intvar)를 지정하는 세 가지 인수가 있습니다.

sscanf() 함수의 알고리즘

  1. sscanf() 함수는 stringstream 클래스에 속하므로 해당 클래스를 프로그램으로 가져와야 합니다.
  2. 상수 문자열 str을 초기화합니다.
  3. 변환된 문자열을 정수 값으로 유지하는 정수 변수를 만듭니다.
  4. sscanf() 함수에 문자열 변수를 전달하고, 정수 변수에 sscanf() 함수를 할당하여 함수에서 생성된 정수 값을 저장합니다.
  5. 정수 값을 인쇄합니다.

C++에서 문자열을 숫자로 변환하기 위해 sscanf() 함수를 사용하는 예를 고려해 보겠습니다.

이진 검색 트리

프로그램2.cpp

 #include #include // use stringstream class using namespace std; int main () { // declare the character strings const char *str1 = &apos;555&apos;; const char *str2 = &apos;143&apos;; const char *str3 = &apos;101&apos;; // declare the integer variables int numdata1; int numdata2; int numdata3; /* use sscanf() function and to pass the character string str1, and an integer variable to hold the string. */ sscanf (str1, &apos;%d&apos;, &amp;numdata1); cout &lt;<' the value of character string is: ' << str1; cout '
 representation to int numdata1 <<endl; sscanf (str2, '%d', &numdata2); <<'
 str2; numdata2 (str3, &numdata3); str3; numdata3 return 0; } < pre> <p> <strong>Output</strong> </p> <pre> The value of the character string is: 555 The representation of string to int value of numdata is: 555 The value of the character string is: 143 The representation of string to int value of numdata is: 143 The value of the character string is: 101 The representation of string to int value of numdata is: 101 </pre> <h3>Using the stoi() function</h3> <p>The stoi() function converts a string data to an integer type by passing the string as a parameter to return an integer value.</p> <p> <strong>Syntax</strong> </p> <pre> stoi(str); </pre> <p>The stoi() function contains an str argument. The str string is passed inside the stoi() function to convert string data into an integer value.</p> <p> <strong>Algorithm of the stoi() function</strong> </p> <ol class="points"> <li>Initialize the string variable to store string values.</li> <li>After that, it creates an integer type variable that stores the conversion of string into integer type data using the stoi() function.</li> <li>Print the integer variable value.</li> </ol> <p>Let&apos;s create a program to use the stoi() function to convert the string value into the integer type in the C++ programming language.</p> <p> <strong>Program3.cpp</strong> </p> <pre> #include #include using namespace std; int main () { string strdata1 = &apos;108&apos;; string strdata2 = &apos;56.78&apos;; string strdata3 = &apos;578 Welcome&apos;; // use stoi() function to pass string as arguments int intdata1 = stoi (strdata1); int intdata2 = stoi (strdata2); int intdata3 = stoi (strdata3); // print the converted values cout &lt;&lt; &apos; The conversion of string to an integer using stoi(&apos;&apos; &lt;&lt; strdata1 &lt;&lt; &apos;&apos;) is &apos; &lt;&lt; intdata1 &lt;<endl; cout << ' the conversion of string to an integer using stoi(\'' strdata2 '\') is intdata2 <<endl; strdata3 intdata3 return 0; } < pre> <p> <strong>Output</strong> </p> <pre> The conversion of string to an integer using stoi(&apos;108&apos;) is 108 The conversion of string to an integer using stoi(&apos;56.78&apos;) is 56 The conversion of string to an integer using stoi(&apos;578 Welcome&apos;) is 578 </pre> <h3>Using the atoi() function</h3> <p>An atoi() function is used to convert the character string into an integer value. An atoi() function passes the character type string to return the integer data.</p> <p> <strong>Syntax</strong> </p> <pre> atoi (const char *str); </pre> <p> <strong>Algorithm of the atoi() function</strong> </p> <ol class="points"> <li>Initialize a pointer-type character array to store a string.</li> <li>After that, it creates an integer type variable that stores the conversion of string into integer type data using the atoi() function.</li> <li>Print the integer variable value.</li> </ol> <p>Let&apos;s create a program to use the atoi() function to convert the string value into the integer type in the C++ programming language.</p> <p> <strong>Program4.cpp</strong> </p> <pre> #include #include using namespace std; int main () { // declare a constant character array of string const char *strdata1 = &apos;256&apos;; const char *strdata2 = &apos;16.18&apos;; const char *strdata3 = &apos;1088 Good Bye&apos;; // use atoi() function to pass character type array as arguments int intdata1 = atoi (strdata1); int intdata2 = atoi (strdata2); int intdata3 = atoi (strdata3); // print the converted values cout &lt;&lt; &apos; The conversion of string to an integer value using atoi(&apos;&apos; &lt;&lt; strdata1 &lt;&lt; &apos;&apos;) is &apos; &lt;&lt; intdata1 &lt;<endl; cout << ' the conversion of string to an integer value using atoi(\'' strdata2 '\') is intdata2 <<endl; strdata3 intdata3 return 0; } < pre> <p> <strong>Output</strong> </p> <pre> The conversion of string to an integer value using atoi(&apos;256&apos;) is 256 The conversion of string to an integer value using atoi(&apos;16.18&apos;) is 16 The conversion of string to an integer value using atoi(&apos;1088 Good Bye&apos;) is 1088 </pre> <hr></endl;></pre></endl;></pre></'>

Stoi() 함수 사용

stoi() 함수는 문자열을 매개변수로 전달하여 정수 값을 반환함으로써 문자열 데이터를 정수형으로 변환합니다.

통사론

 stoi(str); 

Stoi() 함수에는 str 인수가 포함되어 있습니다. str 문자열은 문자열 데이터를 정수 값으로 변환하기 위해 stoi() 함수 내부에 전달됩니다.

Stoi() 함수의 알고리즘

js 세트
  1. 문자열 값을 저장하기 위해 문자열 변수를 초기화합니다.
  2. 이후 stoi() 함수를 이용하여 문자열을 정수형 데이터로 변환한 내용을 저장하는 정수형 변수를 생성한다.
  3. 정수 변수 값을 인쇄합니다.

C++ 프로그래밍 언어에서 stoi() 함수를 사용하여 문자열 값을 정수 유형으로 변환하는 프로그램을 작성해 보겠습니다.

프로그램3.cpp

 #include #include using namespace std; int main () { string strdata1 = &apos;108&apos;; string strdata2 = &apos;56.78&apos;; string strdata3 = &apos;578 Welcome&apos;; // use stoi() function to pass string as arguments int intdata1 = stoi (strdata1); int intdata2 = stoi (strdata2); int intdata3 = stoi (strdata3); // print the converted values cout &lt;&lt; &apos; The conversion of string to an integer using stoi(&apos;&apos; &lt;&lt; strdata1 &lt;&lt; &apos;&apos;) is &apos; &lt;&lt; intdata1 &lt;<endl; cout << \' the conversion of string to an integer using stoi(\'\' strdata2 \'\') is intdata2 <<endl; strdata3 intdata3 return 0; } < pre> <p> <strong>Output</strong> </p> <pre> The conversion of string to an integer using stoi(&apos;108&apos;) is 108 The conversion of string to an integer using stoi(&apos;56.78&apos;) is 56 The conversion of string to an integer using stoi(&apos;578 Welcome&apos;) is 578 </pre> <h3>Using the atoi() function</h3> <p>An atoi() function is used to convert the character string into an integer value. An atoi() function passes the character type string to return the integer data.</p> <p> <strong>Syntax</strong> </p> <pre> atoi (const char *str); </pre> <p> <strong>Algorithm of the atoi() function</strong> </p> <ol class="points"> <li>Initialize a pointer-type character array to store a string.</li> <li>After that, it creates an integer type variable that stores the conversion of string into integer type data using the atoi() function.</li> <li>Print the integer variable value.</li> </ol> <p>Let&apos;s create a program to use the atoi() function to convert the string value into the integer type in the C++ programming language.</p> <p> <strong>Program4.cpp</strong> </p> <pre> #include #include using namespace std; int main () { // declare a constant character array of string const char *strdata1 = &apos;256&apos;; const char *strdata2 = &apos;16.18&apos;; const char *strdata3 = &apos;1088 Good Bye&apos;; // use atoi() function to pass character type array as arguments int intdata1 = atoi (strdata1); int intdata2 = atoi (strdata2); int intdata3 = atoi (strdata3); // print the converted values cout &lt;&lt; &apos; The conversion of string to an integer value using atoi(&apos;&apos; &lt;&lt; strdata1 &lt;&lt; &apos;&apos;) is &apos; &lt;&lt; intdata1 &lt;<endl; cout << \' the conversion of string to an integer value using atoi(\'\' strdata2 \'\') is intdata2 <<endl; strdata3 intdata3 return 0; } < pre> <p> <strong>Output</strong> </p> <pre> The conversion of string to an integer value using atoi(&apos;256&apos;) is 256 The conversion of string to an integer value using atoi(&apos;16.18&apos;) is 16 The conversion of string to an integer value using atoi(&apos;1088 Good Bye&apos;) is 1088 </pre> <hr></endl;></pre></endl;>

atoi() 함수 사용

atoi() 함수는 문자열을 정수 값으로 변환하는 데 사용됩니다. atoi() 함수는 문자 유형 문자열을 전달하여 정수 데이터를 반환합니다.

통사론

 atoi (const char *str); 

atoi() 함수의 알고리즘

  1. 문자열을 저장하기 위해 포인터형 문자 배열을 초기화합니다.
  2. 이후 atoi() 함수를 이용하여 문자열을 정수형 데이터로 변환한 내용을 저장하는 정수형 변수를 생성한다.
  3. 정수 변수 값을 인쇄합니다.

C++ 프로그래밍 언어에서 atoi() 함수를 사용하여 문자열 값을 정수 유형으로 변환하는 프로그램을 만들어 보겠습니다.

프로그램4.cpp

 #include #include using namespace std; int main () { // declare a constant character array of string const char *strdata1 = &apos;256&apos;; const char *strdata2 = &apos;16.18&apos;; const char *strdata3 = &apos;1088 Good Bye&apos;; // use atoi() function to pass character type array as arguments int intdata1 = atoi (strdata1); int intdata2 = atoi (strdata2); int intdata3 = atoi (strdata3); // print the converted values cout &lt;&lt; &apos; The conversion of string to an integer value using atoi(&apos;&apos; &lt;&lt; strdata1 &lt;&lt; &apos;&apos;) is &apos; &lt;&lt; intdata1 &lt;<endl; cout << \' the conversion of string to an integer value using atoi(\'\' strdata2 \'\') is intdata2 <<endl; strdata3 intdata3 return 0; } < pre> <p> <strong>Output</strong> </p> <pre> The conversion of string to an integer value using atoi(&apos;256&apos;) is 256 The conversion of string to an integer value using atoi(&apos;16.18&apos;) is 16 The conversion of string to an integer value using atoi(&apos;1088 Good Bye&apos;) is 1088 </pre> <hr></endl;>