ts.tv_sec, h-6ren">
gpt4 book ai didi

c - 时间差(以微秒为单位)

转载 作者:行者123 更新时间:2023-11-30 17:34:06 28 4
gpt4 key购买 nike

我对 EPOCH 时间有疑问。

我需要计算两个数据包之间的时间差。我不太确定如何:

printf("Epoch Time: %d:%d seconds\n", header->ts.tv_sec, header->ts.tv_usec);

the first packet shows: 1396191661:164162

the second packet shows: 1396191661:164193

我需要变量u_int diff_time来包含两个数据包之间的时间差——以微秒为单位。如您所见,packet_1 和 packet_2 之间的差异仅在微秒部分。

如果差异不仅仅在 tv.u_sec 内,我应该如何计算?

提前致谢。

最佳答案

只需添加秒之间的差异:

udiff = (second.tv_sec - first.tv_sec) * 1000000 + (second.tv_usec - first.tv_usec)

您只需检查两个数据包之间的差异是否小于约 2000 秒,即可保持 32 位 int 的大小。

关于c - 时间差(以微秒为单位),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23512035/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com