Ajout de valeurs entières à une chaîne en C
À l'origine, cette question cherchait à résoudre le problème de l'ajout d'un entier à une chaîne, mais a rencontré une erreur d'exécution. Le langage de programmation C propose plusieurs méthodes pour résoudre ce problème.
std::string::append()
La méthode std::string::append() s'attend à ce que les arguments soient des chaînes terminées par un caractère nul (char*). Cependant, ajouter directement un entier (int) ne produira pas le résultat souhaité.
Approches recommandées
Pour ajouter une valeur entière à une chaîne, envisagez les techniques suivantes :
std::ostringstream:
#include <sstream> std::ostringstream s; s << "select logged from login where id = " << ClientID; std::string query(s.str());
std::to_string (C 11) :
std::string query("select logged from login where id = " + std::to_string(ClientID));
boost::lexical_cast:
#include <boost/lexical_cast.hpp> std::string query("select logged from login where id = " + boost::lexical_cast<std::string>(ClientID));
Ces méthodes convertissent efficacement l'entier valeur dans une représentation sous forme de chaîne et ajoutez-la à la chaîne.
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!