Maison  >  Article  >  développement back-end  >  Comment convertir une chaîne en entier en C++

Comment convertir une chaîne en entier en C++

下次还敢
下次还敢original
2024-05-01 13:27:16946parcourir

En C++, il existe deux façons de convertir une chaîne en entier : utilisez la fonction sto i(), qui reçoit directement la chaîne et renvoie un entier. Utilisez la classe isringstream pour analyser la chaîne dans un flux d'entrée et extraire les entiers. La méthode choisie dépend du format de chaîne : stoi() est plus concise si le format est sans ambiguïté et ne contient aucun caractère non numérique ; isstringstream est plus flexible si la chaîne peut contenir des caractères non numériques ou nécessite une conversion personnalisée.

Comment convertir une chaîne en entier en C++

Méthode de conversion d'une chaîne en entier en C++

En C++, il existe les deux méthodes suivantes pour convertir une chaîne (string) en entier (int) :

1. L'utilisation de la fonction intégrée stoi() est la méthode la plus simple et la plus directe. Il prend un paramètre de chaîne et renvoie un entier.

<code class="cpp">#include <iostream>
#include <string>

int main() {
  std::string str = "123";
  int number = stoi(str);
  std::cout << "String: " << str << "\n";
  std::cout << "Integer: " << number << "\n";
  return 0;
}</code>

stoi() 函数是最简单直接的方法。它接收一个字符串参数并返回一个整数。

<code class="cpp">#include <iostream>
#include <sstream>

int main() {
  std::string str = "456";
  std::istringstream iss(str);
  int number;
  iss >> number;
  std::cout << "String: " << str << "\n";
  std::cout << "Integer: " << number << "\n";
  return 0;
}</code>

2. istringstream

另一种方法是使用 istringstream 类。它将字符串解析为输入流,然后可以使用 运算符提取整数。rrreee

选择哪种方法?

  • 如果字符串格式明确,并且不包含任何非数字字符,则 stoi() 函数是更简单、更快的选择。
  • 如果字符串可能包含非数字字符或需要自定义转换行为,则 istringstream2. isringstream
🎜Une autre façon consiste à utiliser la classe istringstream. Il analyse la chaîne dans un flux d'entrée, à partir duquel les entiers peuvent être extraits à l'aide de l'opérateur . 🎜rrreee🎜🎜Quelle méthode choisir ? 🎜🎜
  • Si la chaîne est bien formée et ne contient aucun caractère non numérique, la fonction stoi() est l'option la plus simple et la plus rapide. 🎜
  • istringstream est plus flexible si la chaîne peut contenir des caractères non numériques ou si un comportement de conversion personnalisé est requis. 🎜🎜

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!

Déclaration:
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