PDA

View Full Version : [C++] - Come copiare un intero in un const char*


Pegasus84
29-07-2020, 17:40
Buonasera,

dato che non uso il C++ da molti anni (solo oggi l'ho rispolverato), mi sono trovato in difficoltà su, probabilmente, una cretinata.

Se ho 2 stringhe e un intero e voglio metterli assieme in un const char *, come posso fare?

Ad esempio,


int i = 10;
const char * filename = new char(10);

filename = "folder/" + i + ".png";


La concatenazione così com'è non va. Qualche anima pia saprebbe aiutarmi?

Grazie anticipatamente a chi risponderà! :)

Gianpaolo64
30-07-2020, 09:37
Puoi usare la cara vecchia sprintf:

sprintf(filename,"folder\\%d.png",i);

filename non può essere const, perchè ne modifichi il contenuto

melko
30-07-2020, 21:37
Come dice Gianpaolo puoi usare sprintf,
oppure visto che si tratta di C++, puoi usare la classe string (che supporta la concatenazione):
string filename = "folder/" + to_string(2) + ".png";

Pegasus84
05-08-2020, 12:13
Ho già risolto proprio con sprintf prima di leggere le vostre risposte.

Grazie mille a tutti lo stesso! ;)