使用ctime获取2个操作之间的间隔?

Mad*_*ada 2 c ctime

我有兴趣使用ctime在不同的点上显示C中程序的执行时间.我尝试过类似的东西,但一定不对......

int main() {

    time_t tm1, tm2;
    tm1 = time(NULL);
    sleep(2);
    tm2 = ctime(tm1);

    printf("%d\n", tm2-tm1);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

你有什么建议或正确的例子吗?提前致谢

unp*_*nic 5

ctime() 返回传递给它的时间的字符串表示.

如果您想要一个简单的经过时间,只需:

    time_t t1, t2;
    t1 = time(0);
    sleep(2);
    t2 = time(0);

    printf("Elapsed: %d\n", t2 - t1);
Run Code Online (Sandbox Code Playgroud)

man ctimeman 2 time.

  • `difftime(t2,t1)`(这是一个`double`)是可移植的方法. (2认同)