Maison > développement back-end > C++ > Programme C++ pour convertir une variable de type int en chaîne

Programme C++ pour convertir une variable de type int en chaîne

PHPz
Libérer: 2023-09-03 22:05:03
avant
3854 Les gens l'ont consulté

Programme C++ pour convertir une variable de type int en chaîne

Les variables de type entier en C++ peuvent stocker des valeurs entières positives ou négatives dans une plage prédéfinie. Les variables de chaîne peuvent stocker des séquences de lettres, de chiffres et de caractères spéciaux. Il existe de nombreux cas d'utilisation où la conversion de int en chaîne est requise. Nous discutons de 3 manières différentes de convertir une variable entière en chaîne.

Si on parle d’algorithmes, c’est très simple. Nous obtenons l'entrée dans une variable entière et la convertissons en variable chaîne.

Utilisez la fonction to_string

Le moyen le plus simple de convertir une valeur entière en chaîne en C++ est d'utiliser la fonction to_string. La fonction to_string est disponible par défaut ; elle accepte une valeur entière en entrée et fournit une valeur de chaîne en sortie. Regardons l'exemple suivant pour mieux comprendre ce concept.

Grammaire

int ip = <integer value>;
string op = std::to_string(ip);
Copier après la connexion

Algorithme

  • Obtenez une entrée dans une variable entière.
  • Utilisez la fonction to_string pour convertir une valeur entière en chaîne et la stocker dans une variable de chaîne.
  • Afficher les résultats.

Exemple

#include <iostream>
using namespace std;
string solve(int ip) {
   //using the to_string function
   return to_string(ip);
}
int main()
{
   int ip = 10;
   string op = solve(ip);
   cout<< "The input value is: " << ip << endl;
   cout<< "The output value is: " + op << endl;
   return 0;
}
Copier après la connexion

Sortie

The input value is: 10
The output value is: 10
Copier après la connexion

Dans cet exemple, nous utilisons la fonction to_string pour convertir une valeur entière en chaîne. Une chose à noter lors de l'affichage de la sortie : nous utilisons l'opérateur d'insertion (<<) pour afficher des valeurs entières, mais lorsque nous affichons une chaîne, nous concaténons simplement la valeur de sortie avec la chaîne précédente pour prouver qu'il s'agit d'une chaîne. <<) 来显示整数值,但是当我们显示字符串时,我们只是将输出值与前面的字符串连接起来以证明它是一个字符串。

Utilisez ostringstream

ostringstream est un tampon de chaîne contenant une séquence de caractères. Dans cette méthode, nous saisissons la valeur entière dans l'objet ostringstream, puis la formatons en chaîne.

Grammaire

int ip = <integer value>;
ostringstream oss;
oss << ip;
string op = oss.str();
Copier après la connexion

Algorithme

  • Obtenez une entrée dans une variable entière.
  • Passez la variable entière d'entrée à l'objet ostringstream.
  • Attribuez la représentation sous forme de chaîne de l'objet ostringstream à la variable de sortie chaîne.
  • Afficher les résultats.

Exemple

#include <iostream>
#include <sstream>

using namespace std;
string solve(int ip) {
   //using ostringstream
   ostringstream oss;
   oss << ip;
   return oss.str();
}

int main()
{
   int ip = 10;
   string op = solve(ip);

   cout<< "The input value after addition of 10 is: " << ip + 10 << endl;
   cout<< "The output value after addition of 10 is: " << op + "10" << endl;
   return 0;
}
Copier après la connexion

Sortie

The input value after addition of 10 is: 20
The output value after addition of 10 is: 1010
Copier après la connexion
Copier après la connexion

Dans l'exemple précédent, nous avons ajouté une valeur entière de 10 à la valeur d'entrée pour indiquer qu'il s'agit d'une valeur entière, et avons ajouté une chaîne "10" à la valeur de sortie pour indiquer qu'il s'agit d'une valeur de chaîne.

Utilisez sprintf

sprintf est une fonction de bibliothèque standard en C++ qui envoie une sortie formatée à la chaîne str. En utilisant la fonction sprintf, nous pouvons convertir un entier en chaîne.

Grammaire

int ip = <integer value>;
char str[100];
sprintf(str, "%d", ip);
string s = str;
Copier après la connexion

Algorithme

  • Obtenez une entrée dans une variable entière.
  • Transmettez la variable entière d'entrée et le tampon de caractères à la fonction sprintf.
  • Attribuez le tampon de caractères à la variable de chaîne résultante.
  • Afficher les résultats.

Exemple

#include <iostream>
using namespace std;
string solve(int ip) {
   char str[100];
   sprintf(str, "%d", ip);
   string s = str;
   return s;
}

int main()
{
   int ip = 10;
   string op = solve(ip);
   cout<< "The input value after addition of 10 is: " << ip + 10 << endl;
   cout<< "The output value after addition of 10 is: " << op + "10" << endl;
   return 0;
}
Copier après la connexion

Sortie

The input value after addition of 10 is: 20
The output value after addition of 10 is: 1010
Copier après la connexion
Copier après la connexion

Cet exemple est similaire à l'exemple précédent, la seule différence est la méthode de conversion. Pour utiliser sprintf, nous n'avons pas besoin d'importer d'autres bibliothèques.

Conclusion

Nous pouvons avoir besoin de convertir des entiers en chaînes à plusieurs reprises, principalement pour générer des données à partir de calculs à l'aide de fonctions qui ne prennent en charge que les arguments de chaîne. La première méthode dont nous avons parlé est la plus simple, mais elle est disponible à partir de C++ 11. La deuxième méthode utilisant ostringstream nécessite l'importation d'une autre bibliothèque sstream, tandis que la dernière méthode utilisant sprintf nécessite un tampon de caractère auxiliaire ou de chaîne pour convertir la valeur entière en chaîne. Le moyen le plus rapide est le premier, mais si cela ne fonctionne pas à cause d'un compilateur obsolète, les deux autres devraient fonctionner.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal