Прога проста как валенок:
//--------------------------------------------------
#include <stdio.h>
#include <time.h>
struct tm ttmp;
time_t tim;
int main()
{
ttmp.tm_year=101; //2001
ttmp.tm_mon=7; //august (8 - 1)
ttmp.tm_mday=28; //my birthday
ttmp.tm_hour=00;
ttmp.tm_min=01;
ttmp.tm_sec=04;
printf("%02d:%02d:%02d\n",ttmp.tm_hour,ttmp.tm_min,ttmp.tm_sec);
tim=mktime(&ttmp);
printf("%02d:%02d:%02d\n",ttmp.tm_hour,ttmp.tm_min,ttmp.tm_sec);
return 0;
}
//---------------------------------------------------
Результат работы ошеломляет.
$ g++ testtime.cc -o testtime && ./testtime
00:01:04
01:01:04
то есть mktime тизменяет ttmp весьма странным образом.
Где вилы? и как это обойти?
(по дате и времени правильно собрать время типа time_t)
Заранее спасибо,
Ростислав
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум struct tm (2006)
- Форум трабла с mktime (2009)
- Форум Разница между UTC и локальной таймзоной (2015)
- Форум Странный скачок времени (2014)
- Форум C: difftime не работает (2006)
- Форум Segmentation fault (2005)
- Форум покритикуйте функцию (2009)
- Форум что не так в использовании структуры (2008)
- Форум День программиста (2017)
- Форум Как объявить extern struct (2011)