Maison  >  Article  >  développement back-end  >  Comment ajouter un entier à un std::string en C ?

Comment ajouter un entier à un std::string en C ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-10 14:47:02917parcourir

How to Append an Integer to a std::string in C  ?

Ajouter un entier à un std::string

Le code ci-dessous tente d'ajouter un entier à un std::string en utilisant l'ajout () :

std::string query;
int ClientID = 666;
query = "select logged from login where id = ";
query.append((char *)ClientID);

Cependant, ce code entraînera un échec d'assertion de débogage. En effet, la méthode append() s'attend à ce que son argument soit une chaîne terminée par NULL (char*).

Il existe plusieurs approches pour ajouter un entier à un std::string:

  1. std::ostringstream:
std::ostringstream s;
s << "select logged from login where id = " << ClientID;
std::string query(s.str());
  1. std::to_string (C 11 et plus tard):
std::string query("select logged from login where id = " +
                  std::to_string(ClientID));
  1. boost::lexical_cast:
#include <boost/lexical_cast.hpp>

std::string query("select logged from login where id = " +
                  boost::lexical_cast<std::string>(ClientID));

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