06.10.2013 Aufrufe

Eine Einführung in die Programmiersprache C und ... - C /C++ Ecke

Eine Einführung in die Programmiersprache C und ... - C /C++ Ecke

Eine Einführung in die Programmiersprache C und ... - C /C++ Ecke

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>E<strong>in</strong>e</strong> <strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> Informatik <strong>und</strong> <strong>die</strong> <strong>Programmiersprache</strong> C<br />

size_t strftime(char *s, size_t smax, const char *fmt, const struct tm *tp)<br />

strftime formatiert Datum <strong>und</strong> Zeit aus *tp <strong>in</strong> s unter Kontrolle von fmt,<br />

analog zu e<strong>in</strong>em pr<strong>in</strong>tf-Format. Gewöhnliche Zeichen (<strong>in</strong>sbesondere auch<br />

das abschliessende '\0') werden nach s kopiert. Jedes %... wird so wie unten<br />

beschrieben ersetzt, wobei Werte verwendet werden, <strong>die</strong> der lokalen Umgebung<br />

entsprechen. Höchstens smax Zeichen werden <strong>in</strong> s abgelegt. strftime<br />

liefert <strong>die</strong> Anzahl der resultierenden Zeichen, mit Ausnahme von '\0'.<br />

Wenn mehr als smax Zeichen erzeugt wurden, liefert strftime den Wert<br />

Null.<br />

Beispiel:<br />

#<strong>in</strong>clude <br />

#<strong>in</strong>clude <br />

Umwandlungszeichen für den Formatstr<strong>in</strong>g fmt:<br />

%a abgekürzter Name des Wochentags.<br />

%A voller Name des Wochentags.<br />

%b abgekürzter Name des Monats.<br />

%B voller Name des Monats.<br />

%c lokale Darstellung von Datum <strong>und</strong> Zeit.<br />

%d Tag im Monat (01 - 31).<br />

%H St<strong>und</strong>e (00 - 23).<br />

%I St<strong>und</strong>e (01 - 12).<br />

%j Tag im Jahr (001 - 366).<br />

%m Monat (01 - 12).<br />

%M M<strong>in</strong>ute (00 - 59).<br />

%p lokales Äquivalent von AM oder PM.<br />

%S Sek<strong>und</strong>e (00 - 61).<br />

%U Woche im Jahr (Sonntag ist erster Tag) (00 - 53).<br />

%w Wochentag (0 - 6, Sonntag ist 0).<br />

%W Woche im Jahr (Montag ist erster Tag) (00 - 53).<br />

%x lokale Darstellung des Datums.<br />

%X lokale Darstellung der Zeit.<br />

%y Jahr ohne Jahrh<strong>und</strong>ert (00 - 99).<br />

%Y Jahr mit Jahrh<strong>und</strong>ert.<br />

%Z Name der Zeitzone, falls <strong>die</strong>se existiert.<br />

%% %. (Gibt e<strong>in</strong> % aus)<br />

#def<strong>in</strong>e BUFFERSIZE 100 /* Groesse fuer Buffer def<strong>in</strong>ieren */<br />

<strong>in</strong>t ma<strong>in</strong>(<strong>in</strong>t argc, char *argv[])<br />

{<br />

time_t Now; /* Platz fuer Zeit<strong>in</strong>fo */<br />

struct tm * OurTimeNow; /* Zeiger auf lokale Zeit */<br />

char Buffer[BUFFERSIZE]; /* Platz fuer formatierte Zeit */<br />

}<br />

Now = time(NULL); /* Aktuelle Zeit holen */<br />

OurTimeNow = localtime(&Now); /* Umwandeln der Zeit <strong>in</strong> lokale Zeit */<br />

/* Formatierten Text erzeugen */<br />

strftime(Buffer, BUFFERSIZE, "Today is %a, the %d of %B", OurTimeNow);<br />

puts(Buffer); /* Und Text ausgeben */<br />

return 0;<br />

Gedruckt am 11.09.2008 13:04:00 Letzte Änderung am: 11. September 2008 Version 2.4, I. Oesch 73/147

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!