Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/11/2010, 02:23
skynyrd999
 
Fecha de Ingreso: noviembre-2010
Mensajes: 1
Antigüedad: 14 años
Puntos: 0
Como pasar enteros a string

Mi duda más concreta acerca es, como pasar tres enteros a un formato de string "1/1/1970", es decir

recibo 3 enteros dia = 1;
mes = 1;
anyo = 1970;

y quiero sacar por salida estandar esa fecha ==> "1/1/1970"




esto es lo q tengo hecho:


void inicializaFecha (TFecha &f){
f.dia = 1;
f.mes = 1;
f.anyo = 1970;
}

void inicializaFecha(TFecha &f, int dia, int mes, int anyo)
{
f.dia = dia;
f.mes = mes;
f.anyo = anyo;
}

void muestraFecha(const TFecha &f){
int d,m,a;

d = f.dia;
m = f.mes;
a = f.anyo;

std::string sdia,smes,sanyo;
std::stringstream dia,mes,anyo;

dia << d;
mes << m;
anyo << a;

sdia = dia.str();
smes = mes.str();
sanyo = anyo.str();

std::cout << sdia << "/" << smes << "/" << sanyo << std::endl;
};

pero no me pasa los siguientes test:


TEST(ConstructorPorDefecto) {
TFecha f;
inicializaFecha(f);
muestraFecha(f);
CHECK_OUTPUT("1/1/1970");
}

TEST(InitYEscribe) {
TFecha f;
inicializaFecha(f, 12, 10, 1492);
muestraFecha(f);
CHECK_OUTPUT("12/10/1492");

inicializaFecha(f, 21, 10, 1492);
muestraFecha(f);
CHECK_OUTPUT("21/10/1492");
}





muchas gracias y un saludo!!!