mktime
と を使用して、2 つの日付の日付の差を計算しようとしていますdifftime
。日付の 1 つは別の日付の内側にあり、struct tm
もう1 つのstruct
日付はstruct tm
内側にありmain
ます。
mktime
内の日付では問題なく動作しますがmain
、内の日付に対して -1 を返し続けstruct
ます。struct
内部にアクセスする方法についてかなり明白なことを見落としていると思いますstruct
が、答えが見つかりませんでした。前もって感謝します。
コードは以下です
#include <stdio.h>
#include <time.h>
struct consulta_cand {
struct tm nascimento;
};
int main(void)
{
struct consulta_cand candidato;
time_t now;
struct tm final2012;
double timeprint;
now = time(NULL);
final2012 = *localtime(&now);
final2012.tm_mday = 28;
final2012.tm_mon = 10 - 1;
final2012.tm_year = 2012 - 1900;
final2012.tm_hour = 23;
final2012.tm_min = 59;
final2012.tm_sec = 59;
timeprint = mktime(&final2012);
printf("%.f\n", timeprint);
candidato.nascimento = *localtime(&now);
candidato.nascimento.tm_mday = 14;
candidato.nascimento.tm_mon = 10 - 1;
candidato.nascimento.tm_year = 1967 - 1900;
candidato.nascimento.tm_hour = 0;
candidato.nascimento.tm_min = 0;
candidato.nascimento.tm_sec = 0;
timeprint = mktime(&candidato.nascimento);
printf("%.f\n", timeprint);
return 0;
}