Я хочу узнать текущее время моей системы. Для этого я использую следующий код на C:
time_t now;
struct tm *mytime = localtime(&now);
if ( strftime(buffer, sizeof buffer, "%X", mytime) )
{
printf("time1 = \"%s\"\n", buffer);
}
Проблема в том, что этот код дает случайное время. Кроме того, случайное время каждый раз разное. Мне нужно текущее время моей системы.
Ответы:
Скопировано отсюда :
(просто добавьте void в список аргументов main (), чтобы это работало в C)
источник
strptime
функцию in time.h для преобразования изchar *
вstruct tm
time_t
объект в качестве аргумента дляtime()
. ВводNULL
,0
и т. Д., Поскольку параметр работает, чтобы вернуть текущее время.Инициализируйте вашу
now
переменную.localtime
Функция используются для преобразования значения времени в переданномtime_t
кstruct tm
, он фактически не получить системное время.источник
Простой способ:
источник
#include <string.h>
Чтобы расширить ответ от @mingos выше, я написал приведенную ниже функцию для форматирования моего времени в определенном формате ([дд мм гггг чч: мм: сс]).
Более подробную информацию
struct tm
можно найти здесь .источник
источник
ребята, вы можете использовать эту функцию, чтобы узнать текущее местное время. если вы хотите gmtime, используйте функцию gmtime вместо localtime. ура
источник
Если вам просто нужно время без даты.
источник
источник
void main()
должно бытьint main(void)
.ребята, у меня есть новый способ получить системное время. хотя он длинный и полон глупых работ, но таким образом вы можете получить системное время в целочисленном формате.
источник