Ronny Wrote : > > Nama variabel gmt_tm di sini misleading. Anda assume > time di atas > adalah GMT, padahal time di atas belum disebutkan > timezonenya. Setelah > anda panggil mktime() baru timezonenya diset (glibc > cari dr > environment anda), maka time yg anda sebutkan di > atas skrg sudah dlm > timezone local anda, lalu anda "convert" lagi ke > local timezone, ya > jelas aja sama. > > Coba kalo sebelum panggil localtime() anda panggil > gmtime() dulu: > > ...mktime(...) > > local_tm = gmtime(&t_gmt); > print_waktunya(local_tm); > > local_tm = localtime(&t_gmt); > print_waktunya(local_tm); > > ... > > nanti kan keliatan bedanya. > > Saran saya: > > - Rename variables anda dr gmt_tm jadi input_tm, dan > dari local_tm > jadi output_tm, supaya lebih mudah dipahami. > - Coba dibaca lagi baik2 man page dr mktime(2), di > situ disebutkan > kalo mktime() punya side effect mengeset extern > vars utk timezone. > > Ronny
Saya memang mengasumsikan gmt_tm di atas adalah GMT. Input saya adalah waktu gmt dalam bentuk string dan saya masukkan ke structur tm. Bagaimana mengeset timezonenya, supaya glibc mengenal gmt_tm sbg GMT? Apakah dengan mengeset tzname menggunakan tzset()? Atau saya konversi manual? Kan ada variable external timezone, jadi-nya waktu GMT dikurang dengan timezone mendapatkan waktu lokal. Kalo saya pakai gmtime, berarti gmt_tm akan di-konversi dua kali GMT iya kan? Kalo contoh yg diberikan menggunakan gmtime, itu kan berarti convert local ke GMT? T.I.A Andry. __________________________________________________ Do You Yahoo!? Yahoo! - Official partner of 2002 FIFA World Cup http://fifaworldcup.yahoo.com -- Utk berhenti langganan, kirim email ke [EMAIL PROTECTED] Informasi arsip di http://www.linux.or.id/milis.php3
