извлечь часть time.h (местное время)

Я хочу извлечь части, например, из tm_sec или только tm_min в виде простого целого числа (а не массива или строки ) как это и возможно (если есть) если что-то мне не нужно 100% правильное время, т.к. я делаю это в своих интересах и просто хочу не знать как это сделать. Прежде чем пытаться сделать что-то с

time_t rawtime;
struct tm * timeinfo;
char buffer [80];

time (&rawtime);
timeinfo = localtime (&rawtime);
strftime (buffer,80,"Now it's %H:%M.",timeinfo);
puts (buffer);

Но меня остановило отсутствие опыта, и теперь я понятия не имею, что делать (просто новичок в программировании) И конечно извините, если был такой вопрос, но я пробовал и не нашел.

*Целью этого является не отображение только тех частей, которые я хочу, а их редактирование.


person undefined    schedule 26.02.2013    source источник
comment
Не забывайте, что год закодирован как «год - 1900» (поэтому вам нужно добавить 1900, чтобы получить фактический календарный год), и этот месяц закодирован с 0 для января до 11 для декабря (поэтому вам нужно добавить один к получить обычный номер месяца). А функция mktime() может взять измененный struct tm и преобразовать его обратно в time_t.   -  person Jonathan Leffler    schedule 26.02.2013


Ответы (1)


Просто получите доступ к членам структуры:

printf("The tm_seconds field is %d\n", timeinfo->tm_sec);

Другими словами, если у вас есть указатель на значение типа struct tm, вы можете использовать оператор стрелки (->) для доступа к любому из членов. Член tm_sec имеет тип int, как и все остальные члены.

Вы можете скопировать значение:

int my_seconds = timeinfo->tm_sec;

а затем также распечатать копию:

printf("my seconds are %d\n", my_seconds);
person unwind    schedule 26.02.2013
comment
Большое спасибо, я бы дал вам репутацию, но не имею возможности сделать это :) - person undefined; 26.02.2013
comment
@undefined: через несколько минут вы сможете принять ответ, который также даст вам некоторую репутацию. - person Jonathan Leffler; 26.02.2013
comment
Теперь могу дать респ, а также отметить как завершенный, еще раз большое спасибо, вы сохранили мой энтузиазм - person undefined; 26.02.2013