Como convertir int a string y viceversa?

Iniciado por j0lama, 25 Noviembre 2014, 23:49 PM

0 Miembros y 1 Visitante están viendo este tema.

j0lama

Hola buenas he empezado hace poco en c++ y la primera duda que me ha surgido ha sido como converir una variable int a una string. He buscado por internet y he encontrado una solucion, la de añadir #include <sstream.h> pero el problema esta en descargarme ese archivo.
Haber si me podrias hechar una mano ya sea con alguna forma de convertir las variables o con el archivo ese.
Un saludo

avesudra

La funciones que andas buscando es esta:
Código (cpp) [Seleccionar]
string std::to_string (int val);
string std::to_string (long val);
string std::to_string (long long val);
string std::to_string (unsigned val);
string std::to_string (unsigned long val);
string std::to_string (unsigned long long val);
string std::to_string (float val);
string std::to_string (double val);
string std::to_string (long double val);

Para convertir de int a string utiliza la función:
Código (cpp) [Seleccionar]
long int strtol (const char* str, char** endptr, int base);
Saludos.
Regístrate en

x64core

Bueno entonces si se usa std::string no es mejor usar std::stoi ( C++ 11 ).

avesudra

Cita de: x64Core en 28 Noviembre 2014, 17:21 PM
Bueno entonces si se usa std::string no es mejor usar std::stoi ( C++ 11 ).
Sin duda, no sabía de su existencia, gracias x64Core

Saludos  :rolleyes:
Regístrate en

Orubatosu

Cita de: j0lama en 25 Noviembre 2014, 23:49 PM
Hola buenas he empezado hace poco en c++ y la primera duda que me ha surgido ha sido como converir una variable int a una string. He buscado por internet y he encontrado una solucion, la de añadir #include <sstream.h> pero el problema esta en descargarme ese archivo.
Haber si me podrias hechar una mano ya sea con alguna forma de convertir las variables o con el archivo ese.
Un saludo

Que yo sepa, cualquier compilador moderno incluye dentro de sus librerías la mencionada: #include <sstream>. Basta con ponerla en la cabecera del programa, no es necesario descargarte nada "aparte".

Aunque la duda ha sido resuelta, comentarte que esa librería en realidad lo que hace es crear objetos de entrada o salida (o ambos) donde poner meter "a saco" cualquier cosa y que esta se convierta en una cadena que va creciendo a medida que se meten cosas, o crear un objeto de este tipo a partir de un string muy largo y sacar del mismo partes como si se tratara de un dispositivo de entrada cualquiera.

Claro, podemos usar objetos de estos para convertir enteros en strings, y viceversa, pero generalmente es matar moscas a cañonazos.

Intenta poner en la cabecera de tu programa ese include, debería de funcionar sin ningún fichero adicional.
"When People called me freak, i close my eyes and laughed, because they are blinded to happiness"
Hideto Matsumoto 1964-1998