using values appropriate for the local environment.
No more than smax characters are placed into s. strftime returns the number of characters, excluding the '\0',
or zero if more than smax characters were produced.
%a abbreviated weekday name.
%A full weekday name.
%b abbreviated month name.
%B full month name.
%c local date and time representation.
%d day of the month (01-31).
%H hour (24-hour clock) (00-23).
%I hour (12-hour clock) (01-12).
%j day of the year (001-366).
%m month (01-12).
%M minute (00-59).
%p local equivalent of AM or PM.
%S second (00-61).
%U week number of the year (Sunday as 1st day of week) (00-53).
%w weekday (0-6, Sunday is 0).
%W week number of the year (Monday as 1st day of week) (00-53).
%x local date representation.
%X local time representation.
%y year without century (00-99).
%Y year with century.
%Z time zone name, if any.
%%%
C语言中时间的函数一.概念
在C/C++中时间转换函数c语言 , 通过学习许多C/C++库,时间转换函数c语言你可以有很多操作、使用时间的方法 。但在这之前你需要时间转换函数c语言了解一些“时间”和“日期”的概念,主要有以下几个:
1. 协调世界时,又称为世界标准时间,也就是大家所熟知的格林威治标准时间(Greenwich Mean Time , GMT) 。比如 , 中国内地的时间与UTC的时差为+8,也就是UTC+8 。美国是UTC-5 。
2. 日历时间 , 是用“从一个标准时间点到此时的时间经过的秒数”来表示的时间 。这个标准时间点对不同的编译器来说会有所不同,但对一个编译系统来说,这个标准时间点是不变的,该编译系统中的时间对应的日历时间都通过该标准时间点来衡量,所以可以说日历时间是“相对时间” , 但是无论你在哪一个时区 , 在同一时刻对同一个标准时间点来说,日历时间都是一样的 。
3. 时间点 。时间点在标准C/C++中是一个整数,它用此时的时间和标准时间点相差的秒数(即日历时间)来表示 。
4. 时钟计时单元(而不把它叫做时钟滴答次数),一个时钟计时单元的时间长短是由CPU控制的 。一个clock tick不是CPU的一个时钟周期,而是C/C++的一个基本计时单位 。
我们可以使用ANSI标准库中的time.h头文件 。这个头文件中定义的时间和日期所使用的方法,无论是在结构定义,还是命名,都具有明显的C语言风格 。下面,我将说明在C/C++中怎样使用日期的时间功能 。
二. 介绍
1. 计时
C/C++中的计时函数是clock(),而与其相关的数据类型是clock_t 。在MSDN中,查得对clock函数定义如下:
clock_t clock( void );
这个函数返回从“开启这个程序进程”到“程序中调用clock()函数”时之间的CPU时钟计时单元(clock tick)数,在MSDN中称之为挂钟时间(wal-clock) 。其中clock_t是用来保存时间的数据类型 , 在time.h文件中,我们可以找到对它的定义:
#ifndef _CLOCK_T_DEFINED
typedef long clock_t;
#define _CLOCK_T_DEFINED
#endif
很明显,clock_t是一个长整形数 。在time.h文件中,还定义了一个常量CLOCKS_PER_SEC , 它用来表示一秒钟会有多少个时钟计时单元 , 其定义如下:
#define CLOCKS_PER_SEC ((clock_t)1000)
可以看到每过千分之一秒(1毫秒) , 调用clock()函数返回的值就加1 。下面举个例子,你可以使用公式clock()/CLOCKS_PER_SEC来计算一个进程自身的运行时间:
void elapsed_time()
{
printf("Elapsed time:%u secs. ",clock()/CLOCKS_PER_SEC);
}
当然,你也可以用clock函数来计算你的机器运行一个循环或者处理其它事件到底花了多少时间:
- mysql怎么设置时区 mysql时间显示设置
- redis实现延时消息队列 redis消息时间过长
- mongodb查询语句大全 mongodb查询最新时间
- mysqli获取所有数据 mysql的提取函数
- mysql 存储时序数据 mysql5.0存储时间
- mysql修改时间为当前时间 mysql8修改日期报错
- mysql转换字符类型 mysql语句中转义
- redis查看命令执行时长 查看redis剩余时间
- rediscluster连接池 redis连接池持续时间
- mysql 分组函数 mysql分组取数据
