IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  sohbet

1Beğeni(ler)
  • 1 Post By MorfiN

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 30 Nisan 2012, 12:33   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Tarih Saat Ayarlamaları




Bazı uygulamalarda program içerisinde tarih ve saat bilgilerine ihtiyaç duyulabilir. C dilinde, tarih ve saat fonksiyonlarının bildirimleri, semblik sabitler ve standart yapılar <time.h> başlık dosyasında tanımlanmıştır. Bu fonksiyonlar üç temel işlevi yerine getirir:

Takvim (Tarih) bilgileri
Yerel Saat
Saat Dilimleri
Bu bölümde tarih ve saat fonksiyonları incelenmişitir.


23.1 time() Fonksiyonu

time() fonksiyonu 01/01/1970 tarihinden, programın çalıştığı tarihe ve saate kadar geçen sürenin saniye cinsinden değerini gönderir. Genel bildirimi:

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
      time_t time(time_t *zaman); 

şeklindedir. Burada:
time_t sayısal bir tip (genllikle long int) olup zaman bilgisini temsil eder.
zaman tarih bilgisini tutan gösterici tipinde bir değişkendir.

NOT
Derleyici tarih bilgisi göstermezse time() fonksiyonu -1 değerini gönderir.

01/01/1970'den bu güne geçen süreyi iki yolla öğrenebiliriz:
Geri dönüş değerini kullanarak
PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
time_t t;
...
time(NULL);
printf("zaman: %ld\n",t);
fonksiyon parametresinden
time_t t
;
...
time(&t);
printf("zaman: %ld\n",t); 


Şimdi örnek uygulamayı Program 23.1'de görelim:

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/* 23prg01.c: time() fonksiyonun kullanımı */

#include <stdio.h>
#include <time.h>

int main ()
{
  
time_t saniye;   /* long saniye; anlamında */

  
saniye time (NULL);

  
puts("01/01/1970'den bu gune kadar gecen sure,");

  
printf ("Saniye olarak  %ld\n"saniye);

  
/* 1 saat = 60*60 = 3600 sn. */
  
printf ("Saat olarak    %ld\n"saniye/3600);

  
/* 1 gün = 24 saat = 24*60*60 = 86400 sn. */
  
printf ("Gun olarak     %ld\n"saniye/86400);

 return 
0;


23.2 ANSI C Tarih-Saat Fonksiyonları, Sabitleri ve Yapıları

Tablo 23.1'de ANSI C'de <time.h> başlık dosyasında bildirilen tarih-saat fonksiyonları listelenmiştir.

Tablo 18.1: time.h'te tanımlı tarih-saat fonksiyonları
Fonksiyon Bildirimi Açıklama


char *asctime(const struct tm *zmn_g); zmn_g göstericinin işaret ettiği veriyi, daha anlaşılabilir bir formatla katar bilgisine çevirir.
zmn_g göstericisi, gmtime() ve localtime() fonksiyonlarının döndürdüğü, tm yapısını gösterir. Geri döndürelen katarın genel formatı:


Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Mmm dd hh:mm:ss yyyy


şeklindedir. Burada
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
haftanın günü, Mmm ay bilgisi, dd ayın günü hh:mm:ss saat bilgisini ve yyyy yıl bilgisidir.
clock_t clock(void); Zaman tik-tak bilgisini döndürür.
char *ctime(const time_t *zaman); Geriye anlaşılır formatta yerel zamanı tutan bir katar döndürür. zaman, time_t tipinde bir uzun tamsayıdır. Katarın formatı:
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Mmm dd hh:mm:ss yyyy şeklindedir.
double difftime(time_t zaman1, time_t zaman2); zaman2 - zaman1 farkını saniye cinsinden hesaplar.


struct tm *gmtime(const time_t *zaman); zaman'ı tm yapısına (İngiltere'deki Greenwitch'göre GMT cinsinden) çevirir. zaman genellikle time fonksiyonu ile döndürülür.

struct tm *localtime(const time_t *zaman); zaman'ı tm yapısına (yerel saat cinsinden) çevirir. zaman genellikle time fonksiyonu ile döndürülür.

time_t mktime(struct tm *zaman); tm tipinde, zaman göstericisine ait tarih-saat bilgisini gösterir.

time_t time(time_t *zaman); 1 Ocak 1970'den bu ana kadar geçen sürenin zaman saniye cinsinden hesaplar.

CLK_TCK (clock ticks per second) makro sabit. Zaman tik-takları ve zamanın saniye cinsinden karşılığı arasında ilişkiyi tanımlar. Bu sabit Turbo C'de
#define CLK_TCK 18.2
şeklinde tanımlanmıştır.
clock_t ve time_t clock() ve time() fonksiyonlarının kullandığı veri tipleri. Bunlar genellikle genllikle long int tipleridir ve <time.h> başlık dosyasında şöyle tanımlıdır.
typedef long clock_t
typedef long time_t
asctime(), gmtime(), localtime() ve mktime() fonksiyonlarının kullandığı tm yapısı söyledir:

struct tm {
int tm_sec; /* saniye, (0 - 59) */
int tm_min; /* dakika, (0 - 59) */
int tm_hour; /* saat, (0 - 23) */
int tm_mday; /* ayın günü, (1 - 31) */
int tm_mon; /* ay, (0 - 11), 0 = Ocak */
int tm_year; /* yıl - 1900 */
int tm_wday; /* haftanın günü, (0 - 6), 0 = Pazar */
int tm_yday; /* yılın günü,(0 - 365) */
int tm_isdst; /* gündüz (-1/0/1) */
};

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!

/* 23prg02.c: asctime() ve localtime() fonksiyonlarının kullanımı */

#include <stdio.h>
#include <time.h>

int main()
{
  
time_t t;
  
struct tm *zaman_bilgisi;

  
time (&t);
  
zaman_bilgisi localtime (&t);

  
printf("Su anki tarih ve saat: %s",asctime(zaman_bilgisi));

 return 
0;


PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!


ÇIKTI

/* 23prg03.c: ctime() fonksiyonunun kullanımı */

#include <stdio.h>
#include <time.h>

main()
{
  
time_t t;

  
time(&t);
  
printf("Su anki tarih ve saat: %s",ctime(&t));

 return 
0;



__________________

Kullanıcı imzalarındaki bağlantı ve resimleri görebilmek için en az 20 mesaja sahip olmanız gerekir ya da üye girişi yapmanız gerekir.

Konu toXic tarafından (28 Mayıs 2012 Saat 13:46 ) değiştirilmiştir.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları sohbet odaları Benimmekan Mobil Sohbet
Cevapla

Etiketler
ayarlamaları, saat, tarih


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
!gun,!saat,!tarih OperServ mIRC Scripting Sorunları 7 08 Mart 2009 18:33
Tarih / Saat Biçimlendirme Cemalizim C# 0 19 Temmuz 2008 16:10
!saat !tarih barhalli mIRC Scripting Sorunları 4 05 Ağustos 2007 21:08
PHP - Tarih ve Saat İşlemleri Majere PHP 0 19 Temmuz 2006 13:58