Одной из особенностей программирования является то, что никогда не существует только одного способа что-то сделать. На самом деле, если бы я подумал об этом, я мог бы найти дюжину совершенно разных способов сделать это. Вы ничего не пропустите, если ваш код соответствует требованиям.
Для вашего удовольствия, вот способ форматирования часов: минут: секунд под Windows (elapsed
- это двойное число, представляющее количество секунд, прошедших с момента ... что-то)
sprintf_s<bufSize>(buf, "%01.0f:%02.0f:%02.2f", floor(elapsed/3600.0), floor(fmod(elapsed,3600.0)/60.0), fmod(elapsed,60.0));