今天比较闲,明天就回家了~ 呵呵
没事 把千年大虫请出来 说说 别吃了我就可以了
以前听说这个DD的时候还不知道是个啥问题,貌似很神秘的样子,而且很多人预言千年虫的到来即将是世界末日等等恐怖,它成了恐怖的代名词.
HOHO 别吓到了我们这些小孩子
呵呵~~
不知道的真得以为....其实看了以后 就会觉得滑稽(还是体谅一下别人,不说了)
#define MINUTE 60
#define HOUR (MINUTE*60)
#define DAY (HOUR*24)
#define YEAR (DAY*365)
static int month[12]={
0,
DAY*(31),
DAY*(31+29),
DAY*(31+29+31),
DAY*(31+29+31+30),
DAY*(31+29+31+30+31),
DAY*(31+29+31+30+31+30),
DAY*(31+29+31+30+31+30+31),
DAY*(31+29+31+30+31+30+31+31),
DAY*(31+29+31+30+31+30+31+31+30),
DAY*(31+29+31+30+31+30+31+31+30+31),
DAY*(31+29+31+30+31+30+31+31+30+31+30)
};//这样定义日期 是不是觉得后面省掉了很多工作?
long kernel_mktime(struct *tm)
{
long res;
int year;
year=tm->tm_year-70//LINUX的时间是从1970年记起的 这里就是千年虫了 它只是没有用1970表示 导致过了2000年 year就会变成负数 这个对于年份来说是不可能的 有人说这会导致世界范围电脑的崩溃 根本就不可能, 只要做下小小的改动就可以了.
res=YEAR*year+DAY*((year+1)/4);//多加的一天
res+=month[tm->tm+month];
if (tm->tm_mon>1 && ((year+2)%4))
res -= DAY;
res += DAY*(tm->tm_mday-1); //当前天数
res += HOUR*tm->tm_hour; //小时
res += MINUTE*tm->tm_min; //分钟
res += tm->tm_sec; //秒
return res;
}