Значение времени (произвольное) как объявить?

Доброго времени суток! Помогите советом или мануальчиком — пишу программу на С++ (контрольная по программированию) всю написал, остался маленький кусок. Собсно, нигде не могу найти понятного описания того, как переменной присвоить значение времени (произвольного), дабы потом некие записи в файле отсортировать по присвоенному мной значению времени. Скажем, к примеру, время прохода через проходную для сотрудников. time_t везде описывается как тип данных но он не воспринимается MVS, как таковой, да и логика его работы непонятна. Заранее спс

time_t очень даже хорошо воспринимается MVS. Только надо включить заголовочный файл <time.h>. Мануальчик можно посмотреть здесь.

Да, я его смотрел, но мне необходимо, чтобы пользователь вводил время произвольное, а не из системы. Следовательно нужна переменная, в которую будет записано значение времени, вот тут-то и затык: я не врублюсь никак каким образом ее объявить, ведь типа данных времени вроде как и нет. Мне приходило в голову вводить переменные типа int и присваивать им соответственно 1-24 и 1-60, но это фигня какая-то.

Прежде всего ты определись для чего тебе нужно время. И какое время тебе нужно. Потому что время бывает очень разное.

Если тебе нужно время прохода сотрудника через проходную, то скорее всего тебе будет нужно не только время, но и дата. А также соотношение этого параметра с реальным временем (календарем). Следовательно, надо использовать time_t и соотв. функции, привязанные к началу «эры UNIX»: 1 января 1970 года. И, кстати, такое время совершенно не обязательно связывать с системным временем компьютера.

Если тебе нужно просто некое абстрактное время, можно использовать просто переменную типа int или long и хранить время в секундах (или в тиках таймера, или в млрд. лет в зависимости от задачи). К этой переменной можно написать обвязку в виде класса, что бы было удобно вводить и выводить время в часах-минутах-секундах.

Из готовых решений, если тебя ничего не устраивает из Time Management (все посмотрел?), еще есть нововведение в STL стандарта C++11 <chrono>.

Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.

Ответить

Вы можете использовать разметку markdown для оформления комментариев и постов. Используйте функцию предпросмотра для проверки корректности разметки.

Пожалуйста, оформляйте исходный код в соответствии с правилами разметки. Для того, чтобы вставить код в комментарий, скопируйте его в текстовое поле ниже, после чего выделите то, что скопировали и нажмите кнопку «код» в панели инструментов. Иначе ваш код может принять нечитаемый вид.

Либо производите оформление кода вручную, следующим образом:

``` #include <iostream> using namespace std; int main() { // ... } ```

Предпросмотр сообщения

Ваше сообщение пусто.