Aşağıdaki program, bg_datecmp() fonksiyonunu kullanarak iki tarih değerini karşılaştırır. Fonksiyon, ilk tarih değeri ikincisinden büyük ise 1 değerini, küçük ise -1 değerini ve iki değer birbirine eşit ise sıfır değerini geri döndürür.
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
int bg_datecmp (const char *date1, const char *date2);
int main(void)
{
int id;
// Türkçe karakterler için
setlocale(LC_ALL, "Turkish");
// Tarih değerleri gg.aa.yyyy (dd.mm.yyyy) veya gg/aa/yyyy (dd/mm/yyyy) formatında girilmelidir.
id = bg_datecmp ("12.04.2020", "09.02.2020");
if (id==1) printf("İlk tarih daha büyüktür!");
else if (id==-1) printf("İkinci tarih daha büyüktür!");
else printf("İki tarih birbirine eşittir!");
return 0;
}
int bg_datecmp (const char *date1, const char *date2)
{
char cdizi01[11], cdizi02[11];
sprintf(cdizi01, "%c%c%c%c%c%c%c%c", date1[6], date1[7], date1[8], date1[9], date1[3], date1[4], date1[0], date1[1]);
sprintf(cdizi02, "%c%c%c%c%c%c%c%c", date2[6], date2[7], date2[8], date2[9], date2[3], date2[4], date2[0], date2[1]);
if(atol(cdizi01) > atol(cdizi02)) return 1;
else if(atol(cdizi01) == atol(cdizi02)) return 0;
else return -1;
}
Yukarıdaki örnekte, program aşağıdaki satırları ekrana yazar:
İlk tarih daha büyüktür!