UNIX环境高级编程读书笔记(六)—时间和日期 (2)
2008-08-19 19:02
246 查看
4.
localtime和gmtime之间的区别是:localtime将日历时间转换成为本地时间,而gmtiem将日历时间转换为国际标准时间。两个函数的返回值类型都是tm.该类型的定义如下。
struct tm{
int tm_sec;
int tm_min;
int tm_hout;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
};
下面是一个例子,打印当前系统的本地时间和国际标准时间。
5.
mktime以本地时间的年,月,日等为参数,将其转换成time_t型。是locatltime函数的功能正好相反。
6.
Asctime和ctime函数产生形式的26字节字符串,这与date(1)命令的系统默认输出形式类似:
Wed Oct 4 07:13:20 CST 2006
7.
下面是应用这些函数的一个程序:
文章转自:http://blog.chinaunix.net/u1/59291/showart.php?id=538558
名称:: | gmtime/localtime |
功能: | transform date and time |
头文件: | #include <time.h> |
函数原形: | struct tm *gmtime(const time_t *calptr) struct tm *locatltime(const time_t calptr); |
参数: | calptr time_t类型的时间 |
返回值: | 返回指向tm类型的指针。 |
struct tm{
int tm_sec;
int tm_min;
int tm_hout;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
};
下面是一个例子,打印当前系统的本地时间和国际标准时间。
/*6_2.c*/ #include <stdio.h> #include <time.h> main() { time_t ti; struct tm *gtime; strcut tm *ltime; if((ti=time(NULL))<0) perror(“error”); gtime=(struct tm*)malloc(sizeof(struct tm)); ltime=( struct tm*)malloc(sizeof(struct tm)); if((gtime=gmtime(&ti))<0) perror(“error”); if((ltime=localtime(&ti))<0) perror(“error”); printf(“gmtime:%d year %d month %d day %d:%d:%d/n”,gtime->tm_year, gtime->tm_mon,gtime->tm_mday,gtime->tm_ hour,gtime->tm_min,gtime->tm_sec); printf(“localtime:%d year %d month %d day %d:%d:%d/n”,ltime->tm_year, ltime->tm_mon,ltime->tm_mday,ltime->tm_ hour,ltime->tm_min,ltime->tm_sec); free(gtime); free(ltime); } |
名称:: | mktime |
功能: | transform date and time |
头文件: | #include <time.h> |
函数原形: | time_t mktime(struct tm *tmptr); |
参数: | tmptr |
返回值: | 若成功则返回日历时间,若出错则返回-1 |
6.
名称:: | ctime/asctime |
功能: | transform date and time |
头文件: | #include <time.h> |
函数原形: | char *asctiem(const struct tm *tmptr); char *ctime(const time_t *calptr); |
参数: | tmptr tmptr类型时间值 calptr calptr类型时间值 |
返回值: | 指向以NULL结尾的字符串指针 |
Wed Oct 4 07:13:20 CST 2006
7.
名称:: | strftime |
功能: | format date and time |
头文件: | #include <time.h> |
函数原形: | size_t strftime(char *s,size_t max,const char *format,const struct tm *tm); |
参数: | |
返回值: | 若有空间则返回存入数组的字符数,否则返回0。 |
/*6_3.c*/ #include <time.h> main() { time_t *nowtime; struct tm *gtime; struct tm *ltime; char *t1; char *t2; time(nowtime); gtime=gmtime(nowtime); ltime=localtime(nowtime); t1=ctime(nowtime); t2=asctme(gtime); printf(“time:%s/n”,t1); printf(“time:%s/n”,t2); printf(“hour:%d min:%d sec:%d/n”,gtime->tm_hour,gtime->tm_min,gtime->tm_sec); free(nowtime); free(gtime); free(ltime); } |
相关文章推荐
- UNIX环境高级编程读书笔记(六)—时间和日期 (1)
- UNIX环境高级编程读书笔记(六)—时间和日期 (2)
- UNIX环境高级编程读书笔记(六)—时间和日期 (1)
- C#时间日期格式大全
- moment.js格式化日期,获取前一个月的时间
- 【转】C/C++中的日期和时间
- javascript将时间和日期字符串转换为时间戳
- Calendar---android 中系统日期时间的获取
- 例说SQL Server 2008 日期和时间函数
- Flex 自定义表格日期时间输入列
- 日期类的时间从为什么是从1970年1月1日(格林威治时间)
- mysql的日期和时间函数
- android中系统时间日期的获取
- 严格验证日期及时间的正则表达
- 从日期+时间的格式的字符串中取到自己想要的数值的感想
- 获取当前的日期时间 格式“yyyy-MM-dd HH:MM:SS”
- 如何读到一个文件的最后更新日期和时间
- OJ积累-输出时间日期(友元类)
- 日期和时间的操作