diff options
Diffstat (limited to 'main.cpp')
-rw-r--r-- | main.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/main.cpp b/main.cpp new file mode 100644 index 0000000..51262e9 --- /dev/null +++ b/main.cpp @@ -0,0 +1,27 @@ +#include <iostream> +#include <ctime> +#include <sys/time.h> + + +int main() { + std::string line; + while (std::getline(std::cin, line)) { + struct timeval tv; + gettimeofday(&tv, nullptr); + + const struct tm *tm = localtime(&tv.tv_sec); + + char buffer[128]; + const ssize_t nw = + strftime(buffer, sizeof buffer - 7, "%Y-%m-%d %H:%M:%S.", tm); + + int multiplier = 100000; + for (int i = 0; i < 6; i++) { + buffer[nw + i] = '0' + tv.tv_usec / multiplier % 10; + multiplier /= 10; + } + buffer[nw + 6] = '\0'; + + std::cout << buffer << ' ' << line << std::endl; + } +} |