Tässä osiossa käsitellään erilaisia tapoja muuntaa annetut merkkijonotiedot kokonaisluvuiksi käyttämällä C++-ohjelmointikieltä. On joitakin tilanteita tai tapauksia, joissa meidän on muutettava tietty data toiseen tyyppiin, ja yksi tällainen tilanne on muuntaa merkkijono int-dataksi ohjelmoinnissa.
Meillä on esimerkiksi numeerinen merkkijono ' 143 ', ja haluamme muuntaa sen numeeriseksi. Meidän on käytettävä funktiota, joka muuntaa merkkijonon kokonaisluvuksi ja palauttaa numeeriset tiedot muodossa 143. Nyt opimme jokaisen menetelmän, joka auttaa muuttamaan merkkijonotiedot kokonaisluvuiksi C++-ohjelmointikielellä.
Eri menetelmiä merkkijonotietojen muuttamiseksi kokonaisluvuiksi C++-ohjelmointikielellä.
- Stringstream-luokan käyttäminen
- Käyttämällä stoi()-funktiota
- Käyttämällä atoi()-funktiota
- Käyttämällä sscanf()-funktiota
Stringstream-luokan käyttäminen
The stringstream on luokka, jota käytetään muuttamaan numeerinen merkkijono int-tyypiksi. Merkkijonoluokka ilmoittaa stream-objektin lisäämään merkkijonon virtaobjektiksi ja poimii sitten muunnetun kokonaislukudatan virtojen perusteella. Stringstream-luokassa on '<>'-operaattoreita, joita käytetään tietojen noutamiseen (<>) vasemmasta operaattorista.
Tehdään ohjelma esittelemään merkkijonoluokkaa merkkijonotietojen muuntamiseksi kokonaisluvuksi C++-ohjelmointikielellä.
mukautettu poikkeus javassa
Ohjelma1.cpp
#include #include // use stringstream class using namespace std; int main() { string str1 = '143'; // 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 <> intdata; // fetch integer type data cout << ' The string value is: ' << str1 << endl; cout << ' The representation of the string to integer type data is: ' << intdata << endl; return 0; }
Lähtö
The string value is: 143 The representation of the string to integer type data is: 143
Yllä olevassa ohjelmassa käytämme stringstream-luokkaa luomaan obj-objekti, ja se auttaa muuttamaan merkkijonotiedot kokonaisluvuksi. Käytämme sitten '<>'-operaattoria poimimaan muunnetun merkkijonon obj:sta numeerisiksi tiedoiksi.
Käyttämällä sscanf()-funktiota
Sscanf()-funktio muuntaa tietyn merkkijonon määritetyksi tietotyypiksi, kuten kokonaisluvuksi.
Syntaksi
sccanf ( str, %d, &intvar);
Sscanf()-funktiossa on kolme argumenttia, jotka määrittävät merkkijonon (str), tietomääritteen (%d) ja kokonaislukumuuttujan (&intvar) muunnetun merkkijonon tallentamiseksi.
mikä on map java
Sscanf()-funktion algoritmi
- Funktio sscanf() kuuluu stringstream-luokkaan, joten meidän on tuotava luokka ohjelmaamme.
- Alusta vakiomerkkijono str.
- Luo kokonaislukumuuttuja pitääksesi muunnetun merkkijonon kokonaislukuarvoiksi.
- Välitä merkkijonomuuttuja sscanf()-funktioon ja määritä sscanf()-funktio kokonaislukumuuttujalle tallentaaksesi funktion luoman kokonaisluvun.
- Tulosta kokonaislukuarvot.
Tarkastellaan esimerkkiä sscanf()-funktion käyttämisestä merkkijonon muuntamiseen numeerisiksi numeroiksi C++:ssa.
Ohjelma2.cpp
#include #include // use stringstream class using namespace std; int main () { // declare the character strings const char *str1 = '555'; const char *str2 = '143'; const char *str3 = '101'; // 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, '%d', &numdata1); cout <<' 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'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 = '108'; string strdata2 = '56.78'; string strdata3 = '578 Welcome'; // 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 << ' The conversion of string to an integer using stoi('' << strdata1 << '') is ' << intdata1 <<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('108') is 108 The conversion of string to an integer using stoi('56.78') is 56 The conversion of string to an integer using stoi('578 Welcome') 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'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 = '256'; const char *strdata2 = '16.18'; const char *strdata3 = '1088 Good Bye'; // 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 << ' The conversion of string to an integer value using atoi('' << strdata1 << '') is ' << intdata1 <<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('256') is 256 The conversion of string to an integer value using atoi('16.18') is 16 The conversion of string to an integer value using atoi('1088 Good Bye') is 1088 </pre> <hr></endl;></pre></endl;></pre></'>
Käyttämällä stoi()-funktiota
Stoi()-funktio muuntaa merkkijonotiedot kokonaislukutyypiksi välittämällä merkkijonon parametrina kokonaisluvun arvon palauttamiseksi.
Syntaksi
stoi(str);
Funktio stoi() sisältää str-argumentin. Str-merkkijono välitetään stoi()-funktion sisällä merkkijonotietojen muuntamiseksi kokonaislukuarvoksi.
Stoi()-funktion algoritmi
- Alusta merkkijonomuuttuja merkkijonoarvojen tallentamiseksi.
- Sen jälkeen se luo kokonaislukutyyppisen muuttujan, joka tallentaa merkkijonon muuntamisen kokonaislukutyyppisiksi tiedoiksi käyttämällä stoi()-funktiota.
- Tulosta muuttujan kokonaislukuarvo.
Tehdään ohjelma, joka käyttää stoi()-funktiota merkkijonon arvon muuntamiseen kokonaislukutyypiksi C++-ohjelmointikielessä.
Ohjelma3.cpp
#include #include using namespace std; int main () { string strdata1 = '108'; string strdata2 = '56.78'; string strdata3 = '578 Welcome'; // 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 << ' The conversion of string to an integer using stoi('' << strdata1 << '') is ' << intdata1 <<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('108') is 108 The conversion of string to an integer using stoi('56.78') is 56 The conversion of string to an integer using stoi('578 Welcome') 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'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 = '256'; const char *strdata2 = '16.18'; const char *strdata3 = '1088 Good Bye'; // 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 << ' The conversion of string to an integer value using atoi('' << strdata1 << '') is ' << intdata1 <<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('256') is 256 The conversion of string to an integer value using atoi('16.18') is 16 The conversion of string to an integer value using atoi('1088 Good Bye') is 1088 </pre> <hr></endl;></pre></endl;>
Käyttämällä atoi()-funktiota
Atoi()-funktiota käytetään muuttamaan merkkijono kokonaislukuarvoksi. Atoi()-funktio välittää merkkijonon palauttaakseen kokonaislukutiedot.
Syntaksi
atoi (const char *str);
Atoi()-funktion algoritmi
- Alusta osoitintyyppinen merkkijono tallentaaksesi merkkijonon.
- Sen jälkeen se luo kokonaislukutyyppisen muuttujan, joka tallentaa merkkijonon muuntamisen kokonaislukutyyppisiksi tiedoiksi käyttämällä atoi()-funktiota.
- Tulosta muuttujan kokonaislukuarvo.
Luodaan ohjelma, joka käyttää atoi()-funktiota merkkijonon arvon muuntamiseen kokonaislukutyypiksi C++-ohjelmointikielessä.
git pull origin master
Ohjelma4.cpp
#include #include using namespace std; int main () { // declare a constant character array of string const char *strdata1 = '256'; const char *strdata2 = '16.18'; const char *strdata3 = '1088 Good Bye'; // 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 << ' The conversion of string to an integer value using atoi('' << strdata1 << '') is ' << intdata1 <<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('256') is 256 The conversion of string to an integer value using atoi('16.18') is 16 The conversion of string to an integer value using atoi('1088 Good Bye') is 1088 </pre> <hr></endl;>
'>