Lorsque vous codez en C++, vous devez parfois convertir un type de données en un autre.
Cet article présentera deux méthodes couramment utilisées pour convertir des chaînes en entiers à l'aide de C++.
Avant d’apprendre les méthodes, vous devez d’abord comprendre les types de données du C++.
1. Types de données en C++
Le langage de programmation C++ possède certains types de données intégrés :
int
, pour les entiers (par exemple 10, 150)double
, pour les nombres à virgule flottante (par exemple 5.0, 4.5)char
, pour un seul caractère (par exemple "D", "!")string
, pour les séquences de caractères (par exemple "Bonjour")bool
, pour les valeurs booléennes (vrai ou faux)
C++ est un langage de programmation fortement typé , ce qui signifie que lorsque vous créez une variable, vous devez déclarer explicitement quel type de valeur y sera stocké.
2. Comment convertir une chaîne en entier
Méthode 1 : utilisez la fonction stoi() pour convertir la chaîne en entier. Il s'agit d'une approche valide et fonctionne avec les versions plus récentes de C++, introduites à partir de C++11. Il accepte une chaîne en entrée et renvoie sa forme entière en sortie.
#include <iostream>
#include <string>
using namespace std;
int main() {
string str = "7";
cout << "我是一个字符串 " << str << endl;
int num = stoi(str);
cout << "我是一个整数 " << num << endl;
}
Résultat de sortie :
je suis une chaîne 7
je suis un entier 7
Méthode 2 : utilisez la classe stringstream pour convertir la chaîne en entier. Cette approche fonctionne principalement avec les anciennes versions de C++. Il le fait en entrant et en sortant des chaînes.
Tout d'abord, vous devez ajouter #include <sstream> en haut du programme pour inclure la bibliothèque sstream.
Créez ensuite un objet stringstream contenant la valeur de la chaîne que vous souhaitez convertir en entier et utilisez-le lors de la conversion.
Vous pouvez utiliser <<
des opérateurs pour extraire des chaînes de variables de chaîne.
Enfin, >>
la valeur int nouvellement convertie est saisie dans la variable int à l'aide de l'opérateur.
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main() {
stringstream ss;
string str = "7";
int num;
ss << str;
ss >> num;
cout << num << endl;
}
Maintenant que vous connaissez deux façons simples de convertir une chaîne en entier en C++, vous pouvez en essayer d’autres.