C++ Program na konverziu znakov na int
Tu uvidíme, ako previesť char na int pomocou programu C++. Existuje 6 spôsobov, ako previesť char na int v C++:
- Používanie Typového odliatku. Použitie static_cast. Pomocou sscanf(). Pomocou stoi(). Pomocou atoi(). Použitie reťazcového prúdu.
Poďme diskutovať o každej z týchto metód podrobne.
1. Použitie Typecasting
Metóda 1:
- Vyhláste a inicializujte našu postavu na konverziu.
- Typ pretypovania znaku na konverziu znaku na int pomocou int.
- Vytlačte celé číslo pomocou cout.
Nižšie je uvedený program C++ na prevod char na hodnotu int pomocou typového obsadzovania:
C++
// C++ program to convert> // char to int (ASCII Value) using typecasting> #include> using> namespace> std;> // Driver code> int> main()> {> > char> ch => 'A'> ;> > cout < <> int> (ch);> > return> 0;> }> |
Výkon
65
Časová zložitosť je O(1) a pomocný priestor je tiež O(1)
Ak je potrebné číselný znak pretypovať do celočíselnej hodnoty, potom môžeme buď odpočítať 48 alebo „0“ a potom pretypovať číselný znak na int.
Nižšie je uvedený program C++ na konverziu char na celočíselné hodnoty pomocou typcastingu:
C++
// C++ program to convert> // char to int (integer value) using typecasting> #include> using> namespace> std;> // Driver code> int> main()> {> > char> ch => '5'> ;> > // Subtracting 48 will produce desired results> > cout < <> int> (ch) - 48 < <> '
'> ;> > // Also subtracting '0' will result in same output> > cout < <> int> (ch -> '0'> );> > return> 0;> }> // This code is contributed by Susobhan Akhuli> |
Výkon
5 5
Metóda 2:
- Vyhláste a inicializujte našu postavu na konverziu.
- Deklarujte inú premennú ako int N a priraďte znak ch k N.
- Vytlačte celé číslo pomocou cout.
Nižšie je uvedený program C++ na prevod char na hodnotu int pomocou typového obsadzovania:
C++
// C++ program to convert> // char to int (ASCII value) using typecasting> #include> using> namespace> std;> // Driver code> int> main()> {> > char> ch => 'a'> ;> > int> N => int> (ch);> > cout < < N;> > return> 0;> }> |
Výkon
97
2. Použitie static_cast
Znak je možné previesť na celé číslo pomocou funkcie static_cast. Nižšie je uvedený program C++ na prevod char na hodnotu int pomocou static_cast:
C++
// C++ program to convert char> // to int (ASCII Value) using static_cast> #include> using> namespace> std;> // Driver code> int> main()> {> > char> ch => 'A'> ;> > int> N => static_cast> <> int> >(ch);> > cout < < N;> > return> 0;> }> |
Výkon
65
3. Pomocou sscanf
Číta dáta z s a ukladá ich na miesta určené dodatočnými argumentmi vo formáte parametrov. Nižšie je uvedený program C++ na konverziu char na int pomocou sscanf():
C++
// C++ program to convert char> // to int using sscanf()> #include> using> namespace> std;> // Driver code> int> main()> {> > const> char> *s => '1234'> ;> > int> x;> > sscanf> (s,> '%d'> , &x);> > cout < <> '
The integer value of x : '> < < x;> > return> 0;> }> |
Výkon
The integer value of x : 1234
4. Pomocou stoi
Funkcia stoi() v C++ konvertuje reťazec na celočíselné hodnoty. Nižšie je uvedený program C++ na konverziu char na int pomocou stoi():
C++
// C++ program to convert char> // to int using stoi()> #include> #include> using> namespace> std;> // Driver code> int> main()> {> > char> s1[] => '45'> ;> > int> x = stoi(s1);> > cout < <> 'The integer value of x : '> < < x;> > return> 0;> }> |
Výkon
The integer value of x : 45
5. Použitie atoi
Ak je spustenie úspešné, metóda atoi() vráti prevedenú celočíselnou hodnotu. Ak daný reťazec nemožno previesť na celé číslo, vráti 0. Nižšie je uvedený program C++ na konverziu char na int pomocou atoi():
C++
// C++ program to convert char> // to int using atoi()> #include> using> namespace> std;> // Driver code> int> main()> {> > const> char> *str => '1234'> ;> > int> y => atoi> (str);> > cout < <> '
The integer value of y :'> < < y;> > return> 0;> }> |
Výkon
The integer value of y :1234
6. Použitie stringstream
Stringstream spája objekt typu string s prúdom, čo vám umožňuje čítať z neho, ako keby to bol prúd (ako cin). Stringstream vyžaduje zahrnutie súboru hlavičky streamu. Trieda stringstream sa hodí pri spracovaní vstupu.
Nižšie je uvedený program C++ na konverziu char na int pomocou reťazcového prúdu:
C++
// C++ program to convert char> // to int using string stream> #include> #include> #include> using> namespace> std;> // Driver code> int> main()> {> > stringstream string;> > string < <> '5'> ;> > int> n;> > string>> n;> > cout < <> 'Integer value is: '> < < n;> > return> 0;> }> |
Výkon
Integer value is: 5
6. Metóda: Prevod hodnoty char na int pridaním 0
C++
// C++ program to convert> // char to int using typecasting by adding zero> #include> using> namespace> std;> > //Driver code> int> main()> {> > char> charvalue => 'a'> ;> > int> number = (> int> (charvalue)+0);> > cout < < number;> > return> 0;> }> > //this code is contributed by uomkar369> |
Výkon
97