08.11.2014 Views

c_kitap

c_kitap

c_kitap

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

C ve Sistem Programcıları Derneği - C Ders Notları - Necati Ergin<br />

printf("gun isigi tasarruf modu bilgisi elde edilemiyor!\n");<br />

else if (tptr->tm_isdst > 0)<br />

printf("gun isigi tasarruf modundayiz!\n");<br />

else<br />

printf("gun isigi tasarruf modunda degiliz!\n");<br />

}<br />

return 0;<br />

ctime İşlevi<br />

Bu işlev, takvim zamanı bilgisini girdi olarak alarak bu bilgiyi bir yazıya dönüştürür.<br />

İşlevin bildirimi aşağıdaki gibidir:<br />

char *ctime(const time_t *time);<br />

İşlevin parametre değişkeni time_t türünden bir adrestir. İşlev adresini aldığı nesneden<br />

takvim zamanı bilgisini okur. İşlevin geri dönüş değeri 26 karakterlik bir yazının başlangıç<br />

adresidir. Bu yazı ayrıştırılmış zaman bilgilerini içeren özel olarak formatlanmış bir<br />

yazıdır:<br />

F r i F e b 2 3 1 2 : 2 5 : 5 4 2 0 0 4 \n '\0'<br />

Fri Feb 23 12:25:12 2004<br />

İşlev statik ömürlü bir dizinin adresiyle geri döner. İşlevin geri dönüş değeri olan<br />

adresteki yazı kullanılmadan ya da başka bir diziye aktarılmadan, işlev bir kez daha<br />

çağrılırsa, daha önceki çağrı ile ilgili olarak üretilen yazının üstüne yazılmış olur. Aşağıda<br />

işlevin kullanımına ilişkin örnek bir kod parçası yer alıyor:<br />

#include <br />

#include <br />

int main()<br />

{<br />

char *ptr;<br />

time_t timer;<br />

timer = time(NULL);<br />

ptr = ctime(&timer);<br />

printf("%s", ptr);<br />

}<br />

return 0;<br />

asctime İşlevi<br />

ctime işlevinin yaptığı işin aynısını yapar. Ancak girdi olarak takvim zamanını değil<br />

ayrıştırılmış zaman bilgisini alır:<br />

char *asctime (const struct tm *tblock);<br />

İşlevin parametre değişkeni struct tm yapısı türünden bir adrestir. İşlev, adresini aldığı<br />

nesneden, ayrıştırılmış zaman bilgilerini okur. Bu bilgiyi bir yazıya dönüştürerek, özel bir<br />

formatta 26 karakterlik statik ömürlü bir dizi içine yazar. İşlev, ilgili yazının başlangıç<br />

adresine geri döner. İşlevin geri dönüş değeri olan adresteki yazı kullanılmadan ya da<br />

başka bir diziye aktarılmadan, işlev bir kez daha çağrılırsa, daha önceki çağrı ile ilgili<br />

olarak üretilen yazının üstüne yazılmış olur. Aşağıda işlevin kullanımına ilişkin örnek bir<br />

kod parçası yer alıyor:<br />

399

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!