C++程序中多个位置的时间 (0) 时间戳
timestamp of time(0) at multiple places in a C++ program
为什么C++程序中多个位置的时间(0(的时间戳是相同的值?
前任:
int main(){
cout << time(0) << endl;
cout << time(0) << endl;
cout << time(0) << endl;
cout << time(0) << endl;
}
上述所有值都相同。这是因为程序的执行速度如此之快,以至于上面示例中的时间值都相同吗?
有人可以帮助我吗?谢谢!
time()
函数的分辨率不够细粒度,无法导致不同的值,从而为您进行的每次调用产生不同的结果,即 CPU 更快。
您可以尝试插入std::this_thread::sleep_for
调用,以检查哪种时序分辨率适合您手头的硬件和操作系统的需求。
time(0)
函数返回当前时间(以秒为单位(。
您上传的代码将在一秒钟内运行所有代码。 因此,即使输出时间,也输出所有相同的时间。
下面的代码是连续输出当前时间3秒。 如果你运行它,你会看到很多数字,但如果你仔细观察,你可以看到这个数字变化了三次。
#include <iostream>
#include <ctime>
int main()
{
time_t s = std::time(0); // time_t is int64 in windows 10 64bit.
time_t n;
do {
n = std::time(0);
std::cout << n << " ";
} while ((s + 3) > n); // repeat until 3 sec passed.
return 0;
}
相关文章:
- C++:floor unix时间戳到UTC月份
- 如何在c++中录制具有精确帧时间戳的视频
- 在两台机器之间进行时间戳的最佳c++chrono函数是什么
- Google protobuf 时间戳未声明标识符,在 Windows 上具有C++
- 在多个时间戳处执行函数
- 以天C++为单位的两个时间戳之间的差异
- 获取 QInputEvent 在 Qt 4.8 中被放入 QEventLoop 队列时的时间戳
- 在 C++ 中为文件名添加时间戳
- 如何从远程 SFTP 服务器获取 HH-MM-SS 时间戳格式的文件列表
- 如何将消息时间戳写入日志文件?
- 将时间戳打印到流的最简单方法
- 读取悖论时间戳字段
- C++程序中多个位置的时间 (0) 时间戳
- 在 c++ 中获取 X 毫秒前的时间戳
- 将 unix 时间戳转换为人类可读的日期
- Microsoft NTLM (v2) 中的时间戳使用
- C++中上周一的时间戳
- 升压C 的时期时间/时间格式
- 如何在C 11中找到持续时间(时间)单位
- 如何解析带有日期-时间+时间偏移的字符串到boost::posix_time::ptime