Tôi đang sử dụng boost::posix_time::ptime
để đo thời gian chạy mô phỏng của mình và cho một số thứ khác.nhận được tăng :: posix_time :: time_duration trong giây
assuimg
boost::posix_time::ptime start, stop;
boost::posix_time::time_duration diff;
start = boost::posix_time::microsec_clock::local_time();
sleep(5);
stop = boost::posix_time::microsec_clock::local_time();
diff = stop - stop;
tại
std::cout << to_simple_string(diff) << std::endl;
trở lại thời gian ở định dạng hh:mm:ss.ssssss
và tôi muốn có thời gian cũng như trong ss.sssssss
.
để làm điều này, tôi đã cố gắng
boost::posix_time::time_duration::sec_type x = diff.total_seconds();
nhưng điều đó đã cho tôi câu trả lời trong định dạng của ss và seconds()
lợi nhuận Trả số bình thường của giây (0..60).
Câu hỏi của tôi làm cách nào để tôi có được thời gian mô phỏng trong vài giây của định dạng ss.ssssss?
EDIT
tôi đã có thể làm:
std::cout << diff.total_seconds() << "." << diff.fractional_seconds() << std::endl;
là có một cái gì đó tao nhã mà có thể vẽ ss.sssssss?
cảm ơn bạn đã phát lại của bạn. Theo ví dụ của bạn, tôi muốn sản lượng sau: 62.0000 (ss.ssssss). Nó có thể được không? – Eagle
@Eagle: Tôi đã thêm một ví dụ với đầu ra mong muốn của bạn bằng cách sử dụng 'boost :: format'. Hy vọng nó giúp. – nabulke