Datum inlezen

Status
Niet open voor verdere reacties.

Calle69

Gebruiker
Lid geworden
18 jan 2007
Berichten
13
hey iedereen,

Ik zit met een vraag.
Ik moet een programma schrijven waarbij ik naar een datum moet vragen.
Het probleem hierbij is dat dit in 1 stuk aan elkaar moet: vb. 01/01/2007
Ik heb 2 functies meegekregen, maar bij de ene functie moet de dag, maand en jaar apart, heeft iemand een oplossing hoe ik mijn datum zou kunnen splitsen in C++.

Functies:

//returnt datum als string (in formaat 1/1/1970) die overeenkomt met meegegeven aantal seconden (sinds 1/1/1970)
const char* secondenNaarDatum(time_t aantalseconden) {
struct tm * timeinfo;
char * buffer = new char[80];
timeinfo = localtime ( &aantalseconden );
strftime (buffer,80,"%d/%m/%Y",timeinfo);
return buffer;
}

//returnt aantal seconden (sinds 1/1/1970) dat overeenkomt met dag/maand/jaar
time_t datumNaarSeconden(int dag, int maand, int jaar) {
time_t rawtime;
struct tm * timeinfo;
time ( &rawtime );
timeinfo = localtime ( &rawtime );
timeinfo->tm_year = jaar - 1900;
timeinfo->tm_mon = maand - 1;
timeinfo->tm_mday = dag;
return mktime(timeinfo);
}



Bedankt!
 
Code:
    int d, m, j;
    string datum = "01/01/2007";
    
    d = atoi(datum.substr(0, 2).c_str());
    m = atoi(datum.substr(3, 2).c_str());
    j = atoi(datum.substr(6, 4).c_str());

Bij bovenstaand voorbeeld heb ik een constante waarde gebruikt. Maar aangezien jij hem inleest zul je dus eerst moeten controleren of de input aan wat voorwaarden voldoet. (lengte van 10, etc)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan