itoa y atoi
Buenas.
Ya de alguna ocasión Llyn hablo sobre una de estas funciones, aca lo que traigo es una pequeña implentación que hice de ambas trabajando directamente con strings (std::string) y pues es un ejemplo también claro de como convertir enteros a cadenas y viceversa
Bueno sin mas largas dejo el código, requiere usar dos liberias que si bien son sustituibles facilmente pues por mi comodidad las dejo así
#include <algorithm>
#include <cmath>
using namespace std;
string __itoa(int number)
{
string ret = "";
for(; number > 0; number -= number % 10, number /= 10)
ret += (char)((number%10) + 0x30);
reverse(ret.begin(), ret.end());
return ret;
}
int __atoi(string number)
{
int ret = 0;
for(int i = 0, j = number.length() - 1; number[i] != '\0'; ++i, --j)
ret += (number[i] - 0x30) * pow(10, (static_cast<double> (j)));
return ret;
}
saludos, espero que sea util
Posts Relacionados
- Sumar numeros muy grandes c++ Buenas. Resolviendo un pequeño problema me encontre con que debía...
- Intento de grep en c++ Buenas. Necesitaba este pequeño programita para algo que estoy haciendo,...
- Enviar emails con Visual C++ .NET Despues de tiempo sin escribir (ya se me acabaron las...
- Balanceo de expresiones usando pilas en c++ Buenas El balanceo de expresiones (no se con que otro...
- 500! Buenas. Hace unos días en un post sobre permutaciones dabamos...
- Barra de progreso con ncurses Buenas. Pues eso una barra de progresos, no crean que...



Ademas.. Se que hacer pornos es dificil. Pero intenta explicar porque las funciones funcionan para saber funcionar las funciones -.-’. xD…
Usandocomo siempre :P (broma)
Usando