Tutaj zobaczymy, jak przekonwertować znak na int za pomocą programu C++. Istnieje 6 sposobów konwersji znaku na int w C++:
- Korzystanie z rzutowania. Używanie static_cast. Używanie sscanf(). Używanie stoi(). Używanie atoi(). Korzystanie ze strumienia ciągów.
Omówmy szczegółowo każdą z tych metod.
1. Korzystanie z rzutowania
Metoda 1:
Java, jeśli jest inaczej
- Zadeklaruj i zainicjuj naszą postać do konwersji.
- Wpisz znak, aby przekonwertować znak na int za pomocą int.
- Wydrukuj liczbę całkowitą za pomocą cout.
Poniżej znajduje się program C++ do konwersji znaku na wartość int za pomocą rzutowania typów:
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;> }> |
>
>Wyjście
65>
Złożoność czasowa to O(1), a przestrzeń pomocnicza to także O(1)
Jeśli znak numeryczny musi zostać przeniesiony na wartość całkowitą, możemy albo odjąć 48, albo „0”, a następnie wpisać znak numeryczny na int.
Poniżej znajduje się program C++ konwertujący znak na wartość całkowitą za pomocą rzutowania typów:
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> |
>
>Wyjście
instrukcja if-else Java
5 5>
Metoda 2:
- Zadeklaruj i zainicjuj naszą postać do konwersji.
- Zadeklaruj inną zmienną jako int N i przypisz znak ch do N.
- Wydrukuj liczbę całkowitą za pomocą cout.
Poniżej znajduje się program C++ do konwersji znaku na wartość int za pomocą rzutowania typów:
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;> }> |
>
>Wyjście
97>
2. Używanie static_cast
Znak można przekonwertować na liczbę całkowitą za pomocą funkcji static_cast. Poniżej znajduje się program C++ do konwersji znaku na wartość int za pomocą 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;> }> |
>
>Wyjście
65>
3. Korzystanie z programu sscanf
Odczytuje dane z s i zapisuje je w miejscach określonych przez dodatkowe argumenty w formacie parametru. Poniżej znajduje się program C++ do konwersji znaku na int za pomocą sscanf():
C++
porównanie ciągów 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;> }> |
>
>Wyjście
The integer value of x : 1234>
4. Używanie stoiska
Funkcja stoi() w C++ konwertuje ciąg znaków na wartość całkowitą. Poniżej znajduje się program C++ konwertujący znak na int za pomocą stoi():
C++
kw. 4 miesiące
// 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;> }> |
>
>Wyjście
The integer value of x : 45>
5. Używanie atoi
Jeśli wykonanie się powiedzie, metoda atoi() zwraca przekonwertowaną wartość całkowitą. Jeśli danego ciągu nie można przekonwertować na liczbę całkowitą, zwróci 0. Poniżej znajduje się program C++ konwertujący znak na int za pomocą 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;> }> |
>
>Wyjście
The integer value of y :1234>
6. Korzystanie ze strumienia stringów
Stringstream łączy obiekt string ze strumieniem, umożliwiając odczyt z niego tak, jakby był strumieniem (jak cin). Stringstream wymaga dołączenia pliku nagłówkowego sstream. Klasa stringstream przydaje się podczas przetwarzania danych wejściowych.
Poniżej znajduje się program C++ do konwersji znaku na int przy użyciu strumienia ciągów znaków:
C++
Java przesyła ciąg znaków do int
// 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;> }> |
>
>Wyjście
Integer value is: 5>
6. Metoda: Konwersja wartości char na int poprzez dodanie 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> |
>
>Wyjście
97>