tst-mktime3.c
来自「简单的时间处理类 希望有帮助 谢谢 简单的时间处理类 希望有帮助 谢谢」· C语言 代码 · 共 51 行
C
51 行
/* Test program for mktime bugs with out-of-range tm_sec values. */#include <stdlib.h>#include <stdio.h>#include <time.h>struct tm tests[] ={ { .tm_sec = -1, .tm_mday = 1, .tm_year = 104 }, { .tm_sec = 65, .tm_min = 59, .tm_hour = 23, .tm_mday = 31, .tm_mon = 11, .tm_year = 101 }};struct tm expected[] ={ { .tm_sec = 59, .tm_min = 59, .tm_hour = 23, .tm_mday = 31, .tm_mon = 11, .tm_year = 103, .tm_wday = 3, .tm_yday = 364 }, { .tm_sec = 5, .tm_mday = 1, .tm_year = 102, .tm_wday = 2 }};intmain (void){ setenv ("TZ", "UTC", 1); int i; for (i = 0; i < sizeof (tests) / sizeof (tests[0]); ++i) { if (mktime (&tests[i]) < 0) { printf ("mktime %d failed\n", i); return 1; }#define CHECK(name) \ if (tests[i].name != expected[i].name) \ { \ printf ("test %d " #name " got %d expected %d\n", \ i, tests[i].name, expected[i].name); \ return 1; \ } CHECK (tm_sec) CHECK (tm_min) CHECK (tm_hour) CHECK (tm_mday) CHECK (tm_mon) CHECK (tm_year) CHECK (tm_wday) CHECK (tm_yday) CHECK (tm_isdst) } return 0;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?