学习头文件#include<time.h> 每天都会在此基础上更新哦,记得每天看看哟

关于<time.h>中定义的变量:(地位与作用大差不差和int , double , float , char ....差不多)

size_t         是一个无符号整数类型,它是sizeof关键字的结果。

clock_t       是一个适合存储处理器时间的类型。它是一个long int 型,输出时用%ld。

time_t         是一个适合存储日历时间类型。它是一个long long int 型,输出时用%lld。

struct tm     是一个用来保存时间和日期的结构。

其中,struct tm结构的定义如下:

struct tm
{
    int tm_sec;//从0到59秒
    int tm_min;//从0到59分
    int tm_hour;//从0到23时
    int tm_mday;//一月中的第几天,从1到31
    int tm_mon;//从0到11月
    int tm_year;//自1900年起的年数
    int tm_wday;//一周中的第几天,从0到6,首位为星期天,为0
    int tm_yday;//一年中的第几天,从0到365
    int tm_isdst;//夏令时,我国已废弃
};

注意,算某年某月某日...时,若从0开始,则加1;计算某年时,加1900

1、获取系统当前时间:time()   //返回的是time_t型

#include<time.h>
#include<stdio.h>
int main()
{

    time_t t;
    time_t Time=time(&t);
    /*

    time()是一个函数,括号内填一个参数,叫做传出参数,它要的是一个指针,一般为空NULL;该函数返回的                        
    值是一个time_t类型的.


    此时,Time与t的值是一样的,所以一般用NULL,进行简化为:

	time_t Time=time(NULL);

	*/


    printf("%lld",Time);

	return 0;
 } 

输出来的值是1900到现在的秒数。

2、把时间转化为字符串(年月日时分秒):ctime() //返回的是char型

#include<time.h>
#include<stdio.h>
int main()
{
	time_t Time=time(NULL);//获取系统当前时间; 

	puts(ctime(&Time));//将时间和日期转化为字符串

	return 0;
 } 

3、获取当前时间的具体内容(年月日时分秒):localtime() //将秒数转化为struct tm中的tm对象,相当于调用结构体struct tm

#include<time.h>
#include<stdio.h>
int main()
{
	time_t Time=time(NULL);//获取系统当前时间; 
	printf("%lld\n",Time);//从1900到现在的秒数 
	puts(ctime(&Time));//将时间和日期转化为字符串

	struct tm *ptm=localtime(&Time);//转成结构体 
	printf("year:%d month:%d day:%d\nhour:%d min:%d sec:%d\n%d %d %d\n",
	ptm->tm_year+1900,ptm->tm_mon+1 ,ptm->tm_mday ,
	ptm->tm_hour,ptm->tm_min,ptm->tm_sec,
	ptm->tm_wday,ptm->tm_yday,ptm->tm_isdst ); //wday:一周中的第几天,星期天为0开始算,星期一为1.....;yday:一年的第几天;isdst:不看不看不看,废弃了; 

	return 0;
 } 

4、将结构体struct tm转回time_t型:mktime() //返回的是1900到现在的秒数

#include<time.h>
#include<stdio.h>
int main()
{
	time_t Time=time(NULL);//获取系统当前时间; 
	printf("%lld\n",Time);//27583896585790277  从1900到现在的秒数 
	puts(ctime(&Time));//将时间和日期转化为字符串
	struct tm *ptm=localtime(&Time);//转成结构体 
	printf("year:%d month:%d day:%d\nhour:%d min:%d sec:%d\n%d %d %d\n",
	ptm->tm_year+1900,ptm->tm_mon+1 ,ptm->tm_mday ,
	ptm->tm_hour,ptm->tm_min,ptm->tm_sec,
	ptm->tm_wday,ptm->tm_yday,ptm->tm_isdst ); //wday:一周中的第几天,星期天为0开始算,星期一为1.....;yday:一年的第几天;isdst:不看不看不看,废弃了; 

	time_t t=mktime(ptm);//从结构体转回去 
	printf("%lld\n",t);

	return 0;
 } 

 5、 将结构体型转化为指向字符串的指针:asctime() //返回的是年月日时分秒

#include<time.h>
#include<stdio.h>
int main()
{
	time_t Time=time(NULL);//获取系统当前时间; 
	printf("%lld\n",Time);//27583896585790277  从1900到现在的秒数 
	puts(ctime(&Time));//将时间和日期转化为字符串
	struct tm *ptm=localtime(&Time);//转成结构体 
	printf("year:%d month:%d day:%d\nhour:%d min:%d sec:%d\n%d %d %d\n",
	ptm->tm_year+1900,ptm->tm_mon+1 ,ptm->tm_mday ,
	ptm->tm_hour,ptm->tm_min,ptm->tm_sec,
	ptm->tm_wday,ptm->tm_yday,ptm->tm_isdst ); //wday:一周中的第几天,星期天为0开始算,星期一为1.....;yday:一年的第几天;isdst:不看不看不看,废弃了; 
	time_t t=mktime(ptm);//从结构体转回去 
	printf("%lld\n",t);

	puts(asctime(ptm));
	return 0;
 } 

6、

#include<time.h>
#include<stdio.h>
int main()
{
	
	return 0;
 } 

  • 11
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值