Euphoria 程式庫例程返回的日期和時間。
date() 方法返回八個原子元素組成的序列值。以下舉例說明它的細節:
#!/home/euphoria-4.0b2/bin/eui integer curr_year, curr_day, curr_day_of_year, curr_hour, curr_minute, curr_second sequence system_date, word_week, word_month, notation, curr_day_of_week, curr_month word_week = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"} word_month = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"} -- Get current system date. system_date = date() -- Now take individual elements curr_year = system_date[1] + 1900 curr_month = word_month[system_date[2]] curr_day = system_date[3] curr_hour = system_date[4] curr_minute = system_date[5] curr_second = system_date[6] curr_day_of_week = word_week[system_date[7]] curr_day_of_year = system_date[8] if curr_hour >= 12 then notation = "p.m." else notation = "a.m." end if if curr_hour > 12 then curr_hour = curr_hour - 12 end if if curr_hour = 0 then curr_hour = 12 end if puts(1, "\nHello Euphoria!\n\n") printf(1, "Today is %s, %s %d, %d.\n", {curr_day_of_week, curr_month, curr_day, curr_year}) printf(1, "The time is %.2d:%.2d:%.2d %s\n", {curr_hour, curr_minute, curr_second, notation}) printf(1, "It is %3d days into the current year.\n", {curr_day_of_year}) |
標準螢幕上,這將產生以下結果:
Hello Euphoria! Today is Friday, January 22, 2010. The time is 02:54:58 p.m. It is 22 days into the current year. |
The time() 方法返回一個原子值,相當於一個固定的時間點以來經過的秒數。以下舉例說明它的細節:
#!/home/euphoria-4.0b2/bin/eui constant ITERATIONS = 100000000 integer p atom t0, t1, loop_overhead t0 = time() for i = 1 to ITERATIONS do -- time an empty loop end for loop_overhead = time() - t0 printf(1, "Loop overhead:%d\n", loop_overhead) t0 = time() for i = 1 to ITERATIONS do p = power(2, 20) end for t1 = (time() - (t0 + loop_overhead))/ITERATIONS printf(1, "Time (in seconds) for one call to power:%d\n", t1) |
這將產生以下結果:
Loop overhead:1 Time (in seconds) for one call to power:0 |
Euphoria 提供了許多方法,它可以幫助操縱日期和時間。前方法中列出 Euphoria Library Routines.