2015-01-04 2 views
0

Я использую C++. Я хочу получить компьютерное время (я знаю, как работать с функцией ctime). Я хочу взять время как переменную int (сек, мин и т. Д.). Любая помощь?Получить компьютерное время C++

Нечто вроде: int sec = get.sec(); int min = get.min();

Я не хочу переменную time_t.

+0

Это может быть конкретная операционная система. –

+1

Похоже, вы не проводили никаких исследований. // Закрыто как дубликат. Связанный вопрос имеет то, что дает вам секунды с эпохи. –

+1

У вас есть googled для 'C++ time'? Первая ссылка была (время) [http://www.cplusplus.com/reference/ctime/time/] со ссылками на ('gmtime') [http://www.cplusplus.com/reference/ctime/ gmtime /] внизу. Похоже, что 'tm' struct имеет то, что вы ищете. –

ответ

3

В C++11 вы можете использовать <chrono>. Вы также можете использовать time(2), localtime(3), strftime(3), clock(3), clock_gettime(2) (если у вашей системы есть их). Возможно,

time_t now=0; 
time(&now); 
char nowbuf[64]; 
strftime(nowbuf, sizeof(nowbuf), "%c", localtime(now)); 

может быть релевантным, если вы хотите какой-либо шнур. В противном случае обратите внимание, что localtime возвращает указатель на struct tm, который имеет много числовых полей. например

struct tm* lt = localtime(now); 
int hours = lt->tm_hour; 
int minutes = lt->tm_min; 

Конечно, в принципе, вы должны должны проверить на провал time, localtime и т.д. ... (но я никогда не имел эти функции не в состоянии).

Детали, как правило, зависят от операционной системы. Если в Linux, прочитайте time(7); некоторые библиотеки баз данных, такие как POCO или Qt, могут обеспечить общую (независимую от ОС) абстракцию над ними.

BTW, вы можете или не беспокоиться о time zones, и вы, возможно, захотите gmtime вместо localtime.

+0

Ну, да, но я хочу что-то вроде этого: int sec = get.sec(); int min = get.min(); – ChrystianSandu

+0

сейчас, должна быть struct :) – ChrystianSandu

+0

Что должно быть 'struct'? 'now' (передано' time (& now) '...) определяется как' time_t now = 0; 'и является числовым типом (интегральным типом для каждой системы, о которой я знаю). –

Смежные вопросы