QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1404|回复: 3

怎么得到一段代码的运行时间?已经用code 格式

[复制链接]
发表于 2006-2-20 18:01:45 | 显示全部楼层 |阅读模式
我的想法是运行之前得到一个time,运行之后得到一个timer,但是我不确定还有没有精度更高,或者有什么工具可以做到?



[code:1]
void get_time(char* buffer)
{
    struct tm *newtime;
    char am_pm[] = "AM";
    time_t long_time;
    time( &long_time );                /* Get time as long integer. */
    newtime = localtime( &long_time ); /* Convert to local time. */
    if( newtime->tm_hour > 12 )        /* Set up extension. */
        strcpy( am_pm, "PM" );
    if( newtime->tm_hour > 12 )        /* Convert from 24-hour */
        newtime->tm_hour -= 12;    /*   to 12-hour clock.  */
    if( newtime->tm_hour == 0 )        /*Set hour to 12 if midnight. */
        newtime->tm_hour = 12;
    sprintf(buffer,"%.19s %s", asctime( newtime ), am_pm);
}
char *get_timestr()
{
    static char buf[64];
    get_time(buf);
    return buf;
}
void print_time(const char *msg)
{
    struct tm *newtime;
    char am_pm[] = "AM";
    time_t long_time;
    time( &long_time );                /* Get time as long integer. */
    newtime = localtime( &long_time ); /* Convert to local time. */
    if( newtime->tm_hour > 12 )        /* Set up extension. */
        strcpy( am_pm, "PM" );
    if( newtime->tm_hour > 12 )        /* Convert from 24-hour */
        newtime->tm_hour -= 12;    /*   to 12-hour clock.  */
    if( newtime->tm_hour == 0 )        /*Set hour to 12 if midnight. */
        newtime->tm_hour = 12;
    printf("%.19s %s", asctime( newtime ), am_pm);
}[/code:1]
发表于 2006-2-20 22:38:59 | 显示全部楼层
测试网页脚本就是这么算的,程序首得到时间,程序尾计算时差。
回复

使用道具 举报

 楼主| 发表于 2006-2-21 11:12:44 | 显示全部楼层
我又发现一个函数  gettimeofday()
可以精确到微秒

大家觉得怎么样?
回复

使用道具 举报

发表于 2006-2-21 13:33:53 | 显示全部楼层
[quote:f8a81980fd="li2002708"]我又发现一个函数  gettimeofday()
可以精确到微秒

大家觉得怎么样?[/quote]

一般足够了,一般也是用这个
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-2 22:24 , Processed in 0.093238 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表