Я пробовал this и другие коды, которые я нашел онлайн, но они не сработали. Моя IDE - Xcode. Редактировать: Когда я пробовал код по ссылке, переменная длинные микросекунды всегда возвращались 0. Я хотел бы напечатать метку времени таким образом: (час: минута: микросекунды). Например, 15: 17: 09: 134613464312.Как получить временную метку в микросекундах на C++?
ответ
Метод, который вы используете, является правильным.
Если код между двумя вызовами now() длится меньше микросекунды, микросекунды всегда будут равны нулю, так как число не является плавающей точкой. Если у вас всегда ноль, значит, вам нужно более высокое разрешение (попробуйте наносекунды).
Btw, если вы просто хотите использовать метку времени, вы не хотите использовать этот код, поскольку он выполняется для вычисления прошедшего времени между двумя точками времени. Вы можете попробовать что-то вроде этого:
auto microseconds = std::chrono::duration_cast<std::chrono::microseconds>
(std::chrono::high_resolution_clock::now().time_since_epoch()).count();
Это действительно временная метка, а не продолжительность.
EDIT: Чтобы рассчитывать текущие микросекунды, вы можете сделать что-то вроде этого:
#include <iostream>
#include <chrono>
#include <ctime>
using namespace std;
using namespace std::chrono;
using days = duration<int, ratio_multiply<hours::period, ratio<24> >::type>;
int main() {
system_clock::time_point now = system_clock::now();
system_clock::duration tp = now.time_since_epoch();
days d = duration_cast<days>(tp);
tp -= d;
hours h = duration_cast<hours>(tp);
tp -= h;
minutes m = duration_cast<minutes>(tp);
tp -= m;
seconds s = duration_cast<seconds>(tp);
tp -= s;
cout << tp.count() << "\n";
return 0;
}
Это будет печатать рассчитывать текущие микросекунды.
Часы: минуты: секунды довольно легкие.
Благодарим за быстрый ответ. Я хотел бы показать это следующим образом: (час: минута: микросекунды). Например, 15: 17: 09: 134613464312. Я был бы признателен, если бы вы также сказали мне, как это сделать. Мне жаль, что я не был точен. – stacktest
Вам нужна отметка времени или текущее время? На самом деле это не то же самое. Если вы хотите отобразить временную метку, в часы показа нет смысла, так как это больше, чем 45 лет. –
Прошу прощения за путаницу. Я хочу точное текущее время, как в примере. – stacktest
- 1. Получить текущую временную метку в микросекундах с эпохи?
- 2. Как получить временную метку в c
- 3. Как получить правильную временную метку в C#
- 4. Как получить временную метку quickfix?
- 5. Как получить временную метку .jar?
- 6. Как получить временную метку unix в TwinCAT3?
- 7. Как получить текущую временную метку на C++ с 1970 года?
- 8. Как преобразовать временную метку эпохи в текущую временную метку?
- 9. Как создать временную метку unix в C++?
- 10. Как получить временную метку в Pandas DataFrame
- 11. Как получить временную метку в ClojureScript?
- 12. Как получить временную метку UTC в JavaScript?
- 13. Как получить временную метку в формате YYMMDDHHMMSSNNN
- 14. Как получить временную метку в пандах DataFrame?
- 15. Как преобразовать временную метку в временную метку unix в php?
- 16. Как получить временную метку старше 1901 года
- 17. Как получить временную метку в arduino-esp8266
- 18. Как получить временную метку Unix в Clojure?
- 19. C# - Как преобразовать временную метку в дату?
- 20. Как получить временную метку с веб-страницы
- 21. Как получить текущую временную метку Tango SDK
- 22. Получить текущую временную метку VHDL
- 23. Как преобразовать временную метку GMT в временную метку Unix (javascript)
- 24. Получить временную метку с года
- 25. Как получить всемирную действующую временную метку
- 26. Как получить временную метку из даты NSString?
- 27. Как классифицировать временную метку?
- 28. Как получить временную метку ядра для прерывания?
- 29. Как получить временную метку сервера Firebase?
- 30. Как изменить временную метку?
* Как это работает? Какие у вас проблемы? Какие ошибки, если они есть? Если он строит правильно, без предупреждения, какой результат вы ожидали и что вы получили? –
* «не работает» * - что случилось, когда вы их попробовали? Получили ли вы сообщение об ошибке компилятора (и если да, то), или сомнительное значение времени выполнения? BTW/- для связанного решения вам понадобится C++ 11-совместимый компилятор с поддержкой C++ 11. Для «и других кодов» - вы также должны их описывать? Какое использование людей здесь тратит время, чтобы предоставить вам тот же ответ, который вы уже пробовали? Если вы покажете, что вы пробовали, они могут увидеть вашу ошибку и предложить некоторые целевые советы. –
Пожалуйста, проверьте это. http://stackoverflow.com/questions/22203319/c-c-microsecond-timestamp –