c语言时间加减的函数,c语言时间

时间加减 C语言

在VC中我是这样弄的:

创新互联成立与2013年,先为聂拉木等服务建站,聂拉木等地企业,进行企业商务咨询服务。为聂拉木企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

SYSTEMTIME time;

::GetSystemTime(time);\\取当前时间,time为一个临时的变量

CTime now=time;\\将当前时间存到CTime变量中

\\输入要进行对比的时间存入time中,比如下面(对比时间是2006年8月20日):

time.wYear=2006;

time.wMonth=8;

time.wDay=20;

CTime cmptime=time;\\将要对比的时间放到另一个CTime变量中

CTimeSpan overtime=now-cmptime;\\比较时,两时间直接作差,保存在CTimeSpan变量中,这个值有正负,overtime虽然是CTimeSpan类型的,但是用法和CTime一样

int overdays=overtime.GetDays();\\取天数差距,本例中就为9(今天是8月29日),如果刚才now-cmptime换成cmptime-now,现在的值就是-9

int overdays=overtime.GetMonths();同上,取月差距,其他方法一样,年,分,秒都能比较

自己回去试一试吧,应该有满意的效果!

我也是琢磨了很长时间才弄出来,个人觉得算是比较方便的方法了,正如你所说,时间的计算比较复杂,容易出错,不如让提供好的MFC类对时间进行处理,省去不必要的麻烦!

C语言计算时间函数

标准库的time.h里有时间函数

time_t time (time_t *timer)

计算从1970年1月1日到当前系统时间,并把结果返回给timer变量,

函数本身返回的也是这个结果.time_t这个类型其实就是一个int.

另有:

double difftime ( time_t timer2, time_t timer1 )

把返回time2和time1所储存的时间的差.

c语言时间函数的具体使用方法,时间的加减

#include stdio.h

#include time.h 

int main()

time_t rawtime; 

struct tm * timeinfo; 

time ( rawtime ); 

timeinfo = localtime ( rawtime ); 

printf ( "The current date/time is: %s", asctime (timeinfo) ); 

return 0;

}

说明:

time_t // 时间类型(time.h 定义) 

struct tm { // 时间结构,time.h 定义如下: 

int tm_sec; 

int tm_min; 

int tm_hour; 

int tm_mday; 

int tm_mon; 

int tm_year; 

int tm_wday; 

int tm_yday; 

int tm_isdst; 

time ( rawtime ); // 获取时间,以秒计,从1970年1月一日起算,存于rawtime 

localtime ( rawtime ); //转为当地时间,tm 时间结构 

asctime() // 转为标准ASCII时间格式: 

//就是直接打印tm,tm_year 从1900年计算,所以要加1900,月tm_mon,从0计算,所以要加1


当前标题:c语言时间加减的函数,c语言时间
文章地址:http://scyanting.com/article/hopsii.html