Devo usare un std::string
per memorizzare i dati recuperati da fgets()
. Per fare questo ho bisogno di convertire il char*
valore restituito da fgets()
in std::string
a store in un array. Come si può fare?
Devo usare un std::string
per memorizzare i dati recuperati da fgets()
. Per fare questo ho bisogno di convertire il char*
valore restituito da fgets()
in std::string
a store in un array. Come si può fare?
Risposte:
std::string
ha un costruttore per questo:
const char *s = "Hello, World!";
std::string str(s);
Si noti che questo costrutto copia in profondità l'elenco dei caratteri in s
e s
non dovrebbe esserlo nullptr
, altrimenti il comportamento non è definito.
str
è solo un nome variabile. Potrebbe essere qualsiasi cosa: S
, abc
, l
, I
, strHelloWorld
. Ovviamente alcune scelte sono migliori di altre. Ma per questo esempio str
è abbastanza accettabile.