c语言获取纳秒时间函数 c语言获取微秒时间

用c语言如何获取系统当前时间的函数?方法一,#includetime.h
int main()
{
time_t timep;
struct tm *p;
time (timep);
p=gmtime(timep);
printf("%d\n",p-tm_sec); /*获取当前秒*/
printf("%d\n",p-tm_min); /*获取当前分*/
printf("%d\n",8+p-tm_hour);/*获取当前时,这里获取西方的时间,刚好相差八个小时*/
printf("%d\n",p-tm_mday);/*获取当前月份日数,范围是1-31*/
printf("%d\n",1+p-tm_mon);/*获取当前月份,范围是0-11,所以要加1*/
printf("%d\n",1900+p-tm_year);/*获取当前年份,从1900开始,所以要加1900*/
printf("%d\n",p-tm_yday); /*从今年1月1日算起至今的天数,范围为0-365*/
}
方法二.#include stdio.h
#include time.h
int main ()
{
time_t t
struct tm * lt;time (t);//获取Unix时间戳 。
lt = localtime (t);//转为时间结构 。
printf ( "%d/%d/%d %d:%d:%d\n",lt-tm_year+1900, lt-tm_mon, lt-tm_mday,
lt-tm_hour, lt-tm_min, lt-tm_sec);//输出结果
return 0;}
扩展资料
1、CTimeSpan类
如果想计算两段时间的差值,可以使用CTimeSpan类,具体使用方法如下:
CTime t1( 1999, 3, 19, 22, 15, 0 );
CTime t = CTime::GetCurrentTime();
CTimeSpan span=t-t1; //计算当前系统时间与时间t1的间隔
int iDay=span.GetDays(); //获取这段时间间隔共有多少天
int iHour=span.GetTotalHours(); //获取总共有多少小时
int iMin=span.GetTotalMinutes();//获取总共有多少分钟
int iSec=span.GetTotalSeconds();//获取总共有多少秒
2、timeb()函数
_timeb定义在SYS\TIMEB.H , 有四个fields
dstflag
millitm
time
timezone
void _ftime( struct _timeb *timeptr );
struct _timeb timebuffer;
_ftime( timebuffer );
参考资料来源:百度百科:time函数
c语言有办法取得当前纳秒或微秒级的时间吗Windows 内部有一个精度非常高的定时器, 精度在微秒级, 但不同的系统这个定时器的频率不同, 这个频率与硬件和操作系统都可能有关 。利用 API 函数 QueryPerformanceFrequency 可以得到这个定时器的频率 。利用 API 函数 QueryPerformanceCounter 可以得到定时器的当前值 。
C语言如何获取本地时间,然后取时、分、秒的值?C语言有2个获取时间c语言获取纳秒时间函数的函数c语言获取纳秒时间函数,分别是time()和localtime()c语言获取纳秒时间函数,time()函数返回unix时间戳-即从1970年1月1日0:00开始所经过得秒数,而localtime()函数则是将这个秒数转化为当地的具体时间(年月日时分秒)
这里时间转化要用到一个“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代表一月) - 取值区间为[0,11] */
int tm_year;/* 年份,其值等于实际年份减去1900 */
int tm_wday;/* 星期 – 取值区间为[0,6] , 其中0代表星期天,1代表星期一 */
int tm_yday;/* 从每年1月1日开始的天数– 取值区间[0,365],其中0代表1月1日 */
int tm_isdst;/* 夏令时标识符,夏令时tm_isdst为正;不实行夏令时tm_isdst为0 */
};
示例代码:
#includestdio.h
#includetime.h
int getTime()
{
time_t t;//保存unix时间戳的变量  , 长整型
struct tm* lt;//保存当地具体时间的变量
int p;
time(t);// 等价于 t =time(NULL);获取时间戳
lt = localtime(t);//转化为当地时间
p = lt-tm_sec;//将秒数赋值给p
return p;
}

推荐阅读