阅读:1763回复:30
请教!
怎么用最简单的办法判断一个时间位于一个时间区间内?
如时间区间为2002年1月1号5点30分45秒--2005年2月8日6点28分30秒。 要求,不要调用Win32API。 C语言实现 |
|
最新喜欢:![]()
|
沙发#
发布于:2002-10-23 17:30
花猫,决定用你的方法了。
请5分钟后到ABC版去领专家分。 |
|
|
板凳#
发布于:2002-10-23 17:27
[quote]别给他,我教你,用mktime转! 不行啊,我刚做了实验,前后的C不一样。 time_t ltime; c=time(<ime); struct tm* b; b=gmtime(<ime); c=mktime(b); [/quote] 你用的函数不配套。还是我的方法好 |
|
|
地板#
发布于:2002-10-23 17:26
别给他,我教你,用mktime转! 不行啊,我刚做了实验,前后的C不一样。 time_t ltime; c=time(<ime); struct tm* b; b=gmtime(<ime); c=mktime(b); |
|
|
地下室#
发布于:2002-10-23 17:23
别给他,我教你,用mktime转! 不给拉倒,5555555555555555555555 我的方法多好,从车轱辘做起 55555555555555555555 哪里都能给专家分,比如ABC版 |
|
|
5楼#
发布于:2002-10-23 17:22
别给他,我教你,用mktime转!
函数原型:time_t mktime( struct tm *timeptr ); |
|
6楼#
发布于:2002-10-23 17:18
[quote][quote]其实就是struct tm 到time_t的转化嘛,搞得那么复杂!!! 怎么只找到了time_t到tm的转换, 没有找到tm到time_t的转换? [/quote] 应该没有,用我的方法转 [/quote] 你的方法不错!在那里给你专家分呢? |
|
|
7楼#
发布于:2002-10-23 17:15
[quote]其实就是struct tm 到time_t的转化嘛,搞得那么复杂!!! 怎么只找到了time_t到tm的转换, 没有找到tm到time_t的转换? [/quote] 应该没有,用我的方法转 |
|
|
8楼#
发布于:2002-10-23 17:14
其实就是struct tm 到time_t的转化嘛,搞得那么复杂!!! 怎么只找到了time_t到tm的转换, 没有找到tm到time_t的转换? |
|
|
9楼#
发布于:2002-10-23 17:07
其实就是struct tm 到time_t的转化嘛,搞得那么复杂!!!
|
|
10楼#
发布于:2002-10-23 17:05
重新开一贴给分吧。
|
|
11楼#
发布于:2002-10-23 17:04
花猫,给咱也来点,你一个人不能太撑了。
|
|
12楼#
发布于:2002-10-23 17:03
faint. 把那个结构传给time 直接就是long型数.... 还是不明白,怎么变成了long? |
|
|
13楼#
发布于:2002-10-23 16:45
[quote]专家分稍后奉上。 惭愧,不敢要了,不过你如果硬要给我也不好意思不要 :( :( :( [/quote] 花猫不好意思要,还有我呢 :D :D |
|
|
14楼#
发布于:2002-10-23 16:40
专家分稍后奉上。 惭愧,不敢要了,不过你如果硬要给我也不好意思不要 :( :( :( |
|
|
15楼#
发布于:2002-10-23 16:38
专家分稍后奉上。
谢谢! |
|
|
16楼#
发布于:2002-10-23 16:12
faint. 把那个结构传给time 直接就是long型数.... 也对,但我真的忘记了C的time函数,以前用时也要现看帮助 |
|
|
17楼#
发布于:2002-10-23 16:11
faint. 把那个结构传给time 直接就是long型数....
|
|
|
18楼#
发布于:2002-10-23 16:08
仔细想想,可以把那个结构转成一个32位整数,更简单了
|
|
|
19楼#
发布于:2002-10-23 16:08
typedef struct
{ short int Year; short int Month; short int Day; short int Hour; short int Minute; short int Second; } STRTIME; int gethigh(STRTIME *t) { return (t->year << 16) + (t->mongth << 8) + t->day; } int getlow(STRTIME *t) { return (t->hour << 16) + (t->minute << 8) + t->second; } BOOL comptime(STRTIME *t,STRTIME *t1,STRTIME *t2) { int th=gethigh(t),th1=gethigh(t1)........ int tl........... if(th<=MAX(th1,th2) and th>=MIN(th1,th2) and tl........)return TRUE; return FALSE; } |
|
|
上一页
下一页