2012-11-28 4 views
2

Possible en double:
C++ concatenate string and intComment combiner des chaînes et ints à une seule chaîne (C++)

Je tryinging d'utiliser de nombreuses chaînes et ints pour faire une seule chaîne, mais Je reçois le message: "C2110 d'erreur: '+': ne peut pas ajouter deux pointeurs"

Voici mon code:

transactions[0] = "New Account Made, Customer ID: " + ID + ", Customer Name : " + firstName + " " + secondName + endl + ", Account ID: " + setID + ", Account Name: " + setName;

(notez que ID et SETID est un int)

+0

Essayez d'utiliser '' \ n'' au lieu de 'endl'. – Raptor

Répondre

2

Utilisez un stringstream:

#include <sstream> 

... 
std::stringstream stm; 
stm<<"New Account Made, Customer ID: "<<ID<<", Customer Name : "<<firstName<<" "<<secondName<<std::endl<<", Account ID: "<<setID<<", Account Name: "<<setName; 

Vous pouvez alors accéder à la chaîne résultante avec stm.str().

1

Vous devez utiliser un flux de chaîne: écrire la chaîne en elle; puis écris l'int. Enfin, la récolte le résultat par la méthode str() du flux:

stringstream ss; 
string hello("hello"); 
int world = 1234; 
ss << hello << world << endl; 
string res = ss.str(); 
cout << res << endl; 

Voici un link to a demo on ideone.

Questions connexes