Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:

THEMA: time_t

time_t 4 Jahre 2 Monate her #4997

  • lorglas
  • OFFLINE
  • Moderator
  • Beiträge: 223
  • Punkte: 26480
  • Karma: 0
  • Honor Medal Gold Honar Medal Silver Honor Medal Bronze
Hallo zusammen,

ich hab mir ein Beispiel aus einem Buch genommen und wollte eine Datumdifferenz berechnen. Nur in diesem Beispiel wird die Funktion time_t verwendet, anscheinend gibt es diese nicht Haiku oder heißt anders. Kann mir jemand helfen?

Gruß Lorglas


HIer jetzt der Code:

#include <iostream>
using namespace std;
#include <time.h>

int main()
{
time_t Zeitstempel;
tm *nun;
Zeitstempel = time(0);
nun = localtime(&Zeitstempel);
cout << nun->tm_mday << '.' << nun->tm_mon+1 << '.' << nun ->tm_year+1900 << " - " << nun->tm_hour << ':' << nun->tm_min << endl;
}
Letzte Änderung: 4 Jahre 2 Monate her von lorglas.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: time_t 4 Jahre 2 Monate her #4998

  • Negro
  • OFFLINE
  • Senior Boarder
  • Beiträge: 78
  • Punkte: 9265
  • Karma: 0
  • Honor Medal Gold Honor Medal Bronze Honar Medal Silver
Hi,

hab deinen Post gerade erst gelesen und sitz grad nicht an einem Rechner mit Haiku. Hatte aber mal einen ähnlich gelagerten Fall. Heute Abend kommt dann die qualifizierte Antwort ;)
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: time_t 4 Jahre 2 Monate her #4999

  • lorglas
  • OFFLINE
  • Moderator
  • Beiträge: 223
  • Punkte: 26480
  • Karma: 0
  • Honor Medal Gold Honar Medal Silver Honor Medal Bronze
Hi,

ich hab die Lösung. Habe vergessen die Datei als .cpp zu speichern. Ohne die Endung kam der Kompiler nicht zurecht.

Jetzt geht es.

Gruß Lorenz
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: time_t 4 Jahre 2 Monate her #5000

  • Negro
  • OFFLINE
  • Senior Boarder
  • Beiträge: 78
  • Punkte: 9265
  • Karma: 0
  • Honor Medal Gold Honor Medal Bronze Honar Medal Silver
*Arg* Hab dich auch total vergessen... wollte ja dazu noch was posten ^^... aber dann hat es sich ja erledigt :)

UPDATED:

Kleine Anmerkung am Rande. Das Kernel-Kit bietet auch einige "Zeit" Funktionen als BeOS/Haiku native libs. Das ganze ist im OS.h header zu finden und im Kapitel "Time Information" im BeBook dokumentiert.
Letzte Änderung: 4 Jahre 2 Monate her von Negro.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: time_t 4 Jahre 1 Monat her #5017

  • lorglas
  • OFFLINE
  • Moderator
  • Beiträge: 223
  • Punkte: 26480
  • Karma: 0
  • Honor Medal Gold Honar Medal Silver Honor Medal Bronze
Hi,

wie kann ich eine Datumdifferenz von 1890 bis 1980 berechnen. Irgendwie klappt es bei mir nicht und überall wo ich bisher nachgelesen habe, wird vom 1.1.1970 bis 2038 gesprochen.
Das muss doch irgendwie möglich sein?

Kann mir jemand helfen?

Gruß lorglas
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: time_t 4 Jahre 1 Monat her #5023

  • Stargater
  • OFFLINE
  • Fresh Boarder
  • Beiträge: 1
  • Punkte: 15
  • Karma: 0
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: time_t 4 Jahre 1 Monat her #5024

  • Negro
  • OFFLINE
  • Senior Boarder
  • Beiträge: 78
  • Punkte: 9265
  • Karma: 0
  • Honor Medal Gold Honor Medal Bronze Honar Medal Silver
Ich würde das an deiner Stelle gar nicht mit time_t machen sondern schlicht mit zwei integers.

Sprich:

int dateOne = 1980;
int dateTwo = 1890;
int diff = 0;

diff = dateOne - dateTwo;

Noch einfacher gehts glaube nicht ;) dann hast du die Differenz in Jahren, alles andere kannst du jetzt leicht berechnen...

Kleiner Nachtrag: Wenn du nicht nur Differenzen zwischen Jahren, sondern zwischen Monaten und Jahren brauchst kannst du praktisch äquivalent vorgehen. Hier macht es dann aber durchaus Sinn der Anleitung von Stargater zu folgen.
Letzte Änderung: 4 Jahre 1 Monat her von Negro.
Der Administrator hat öffentliche Schreibrechte deaktiviert.
Ladezeit der Seite: 0.641 Sekunden

Zusätzliche Informationen