Warning: Undefined array key "HTTP_ACCEPT_LANGUAGE" in /var/www/vhosts/bilgigunlugum.net/httpdocs/index.php on line 43
C Programlama

BG MVC Model View Controller eğitim serisi yayında...

Ana sayfa > Programlama > C Programlama > C örnek kodlar > c_ornek00054

C örnek kodlar

Belirli bir tarihe istediğimiz sayıda gün ekleme veya çıkarma

Belirli bir tarihe istediğimiz sayıda gün ekleme veya çıkarma işlemi yapmak için mktime() fonksiyonunu kullanabiliriz.

Aşağıdaki program, önce time() fonksiyonu ile elde ettiği zamanı localtime() fonksiyonu ile yerel zaman çevirerek ekrana yazar. tm yapısı içinde yer alan gün değerini 21 artırdıktan sonra, mktime() fonksiyonu ile yeni tarih değerini elde eder. Elde edilen zamanı localtime() fonksiyonu ile yerel zaman çevirerek ekrana yazar.

Daha önceki bir tarihi elde etmek için, aynı işlem benzer şekilde çıkarma yöntemi ile yapılabilir.


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

int main(void)
{
  setlocale(LC_ALL, "Turkish"); /* Türkçe karakterler için */

  time_t time_1970, time_new;
  struct tm* time_detay;

  time_1970 = time(NULL); // 1 Ocak 1970'den bugüne saniye olarak geçen zaman
  time_detay = localtime(&time_1970); // Yerel zaman

  printf("Bugünün tarihi: %.2d.%.2d.%4d", time_detay->tm_mday, time_detay->tm_mon+1, time_detay->tm_year+1900);

  time_detay->tm_mday += 21;

  time_new = mktime(time_detay);

  time_detay = localtime(&time_new);

  printf("\n21 gün sonraki tarih: %.2d.%.2d.%4d", time_detay->tm_mday, time_detay->tm_mon+1, time_detay->tm_year+1900);

  return 0;
}

Yukarıdaki örnekte, program aşağıdaki satırları ekrana yazar:

Bugünün tarihi: 03.04.2023
21 gün sonraki tarih: 24.04.2023