elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ayuda codigo convertir numero entero a string
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda codigo convertir numero entero a string  (Leído 7,300 veces)
NanoTech

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Ayuda codigo convertir numero entero a string
« en: 3 Abril 2014, 19:52 pm »

 Hola, les pido una ayuda sobre un código que hice para convertir un numero entero a string. El código puede trabajar tanto con números negativos como positivos(aunque solo lo tengo implementado para números positivos). El tema es que no me arroja nada por la salida estandar..HELP! (soy aprendiz en C++)

#include <iostream>
#include <string>


using namespace std;

string intToString(const int x);


int main()
{
    int Numero;
    cout<<"Ingrese un numero entero: ";
    cin>>Numero;
    cout<<"El numero convertido en string es: "<<intToString(Numero)<<endl;
    return 0;
}


string intToString(const int x)
{

string NumeroString;
int y=x,resto; //Copia del numero x

while(y!=0 && resto!=0)
{
resto=y%10;
y=y/10;
NumeroString.push_back((char)resto);

}

return NumeroString;
}


En línea

vangodp


Desconectado Desconectado

Mensajes: 455



Ver Perfil
Re: Ayuda codigo convertir numero entero a string
« Respuesta #1 en: 3 Abril 2014, 20:06 pm »

a que te refieres con convertir a un string?? ¿¿100 = "cien"?? :huh:


En línea

NanoTech

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Ayuda codigo convertir numero entero a string
« Respuesta #2 en: 3 Abril 2014, 20:13 pm »

Sorry quizas me explique mal... La funcion debe retornar un objeto string conteniendo los caracteres del numero ingresado. Por ej. si se ingreso 2014 debe retornar los caracteres 2,0,1 y 4 ..ahora si se entendera mejor .. 
En línea

eferion


Desconectado Desconectado

Mensajes: 1.248


Ver Perfil
Re: Ayuda codigo convertir numero entero a string
« Respuesta #3 en: 3 Abril 2014, 20:40 pm »

el número 8, no es lo mismo que el carácter '8'.

Si miras cualquier tabla ASCII verás que el código que representa al carácter '8' es el  0x38. Lo he puesto en hexadecimal porque es más sencillo de ver.

Para convertir un dígito numérico en su correspondiente carácter has de sumarle 0x30. Si tu intentas imprimir directamente el número 8, estarás mandando a la salida estándar el código correspondiente a una pulsación de la tecla "retroceso" o "borrar", como mejor la identifiques.
En línea

amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: Ayuda codigo convertir numero entero a string
« Respuesta #4 en: 3 Abril 2014, 20:43 pm »

Como anotación, te diré que eso ya está implementado en la librería estándar:
Código
  1. #include <sstream>
  2.  
  3. //...
  4.  
  5. stringstream linea;
  6. linea<<Numero;
  7.  
  8. cout<<linea.str()<<endl;
En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
SrCooper

Desconectado Desconectado

Mensajes: 137


Bazinga!


Ver Perfil
Re: Ayuda codigo convertir numero entero a string
« Respuesta #5 en: 3 Abril 2014, 20:51 pm »

La manera más sencilla (utilizando C++11) sería esta:
Código
  1. std::string linea = std::to_string(42);

Un saludo :D
En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: Ayuda codigo convertir numero entero a string
« Respuesta #6 en: 3 Abril 2014, 20:54 pm »

Solo un par de correcciones:

Código
  1. string intToString(const int x)
  2. {
  3.  
  4. string NumeroString;
  5. int y=x,resto;
  6.  
  7. /** Aquí tendrías que comprobar si es negativo o no, para luego ponerle el signo '-' delante del número.
  8. Eso, si quieres hacerlo con negativos también, claro **/
  9.  
  10. while(y!=0) // resto!=0 sobraba. Aquí no importa que número es el resto.
  11. {
  12.    resto=y%10;
  13.    y=y/10;
  14.    NumeroString=(char)(resto+48) + NumeroString; //Con push_back lo pondríamos al revés
  15. }                                //Lo de +48 es, como dijo Eferion, para convertir el numero a un char del 0 al 9 (48-57)
  16.  
  17. return NumeroString;
  18. }
« Última modificación: 3 Abril 2014, 22:13 pm por ivancea96 » En línea

vangodp


Desconectado Desconectado

Mensajes: 455



Ver Perfil
Re: Ayuda codigo convertir numero entero a string
« Respuesta #7 en: 3 Abril 2014, 21:10 pm »

ves si te explica bien te entierran en respuestas jeje :laugh:
Este es el mejor foro ^^  ;-)
En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: Ayuda codigo convertir numero entero a string
« Respuesta #8 en: 3 Abril 2014, 22:13 pm »

Creo que se explicó bastante bien, Vangodp. Si lo tuyo son ganas de... e.e
En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: Ayuda codigo convertir numero entero a string
« Respuesta #9 en: 3 Abril 2014, 23:37 pm »

Como anotación, te diré que eso ya está implementado en la librería estándar:
Código
  1. #include <sstream>
  2.  
  3. //...
  4.  
  5. stringstream linea;
  6. linea<<Numero;
  7.  
  8. cout<<linea.str()<<endl;

Pues tal como lo pones me sale un número raro, sin dejarme introducir el número.

Sé que el fallo lo tengo yo, pero ¿dónde?.

Saludos!.
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda [Problema al convertir HEX a String]
Programación Visual Basic
The Swash 3 2,807 Último mensaje 1 Febrero 2010, 17:01 pm
por The Swash
[Python 2.7.3] No me convierte string a numero entero
Python
Yidu 4 3,324 Último mensaje 19 Febrero 2013, 20:25 pm
por Yidu
Convertir std::string a valor entero? « 1 2 »
Programación C/C++
t4r0x 10 8,002 Último mensaje 6 Abril 2014, 08:46 am
por t4r0x
Ayuda no me copia el string entero
Programación C/C++
PabloPbl 2 2,264 Último mensaje 11 Diciembre 2015, 04:39 am
por PabloPbl
[AYUDA]Convertir un array de enteros a un numero entero en Java
Java
Suncar007 2 8,541 Último mensaje 7 Noviembre 2017, 02:18 am
por PabloPbl
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines