c语言获取微秒函数,c++获取微秒

如何用C语言得到精确到微秒?clock不行,因为数据本来就比较少,没差别,推荐一个函数吧,谢谢了

我们一直用的是usleep()函数,这个函数用来延时再好不过了,usleep(10000) 就是延时10ms,在用户层程序中非常实用的。

创新互联公司,专注为中小企业提供官网建设、营销型网站制作、响应式网站开发、展示型网站制作、网站建设等服务,帮助中小企业通过网站体现价值、有效益。帮助企业快速建站、解决网站建设与网站营销推广问题。

如何用C语言得到精确到微秒

timeval这个struct当中可以精确到微秒。

LINUX中示例:

#include stdio.h        // for printf()

#include sys/time.h    // for gettimeofday()

#include unistd.h        // for sleep()

int main()

{

struct timeval start, end;

gettimeofday( start, NULL );

printf("start : %d.%d\n", start.tv_sec, start.tv_usec);

sleep(1);

gettimeofday( end, NULL );

printf("end   : %d.%d\n", end.tv_sec, end.tv_usec);

return 0;

}

运行结果:

start : 1418118324.633128

end   : 1418118325.634616

c语言如获取系统时间精确到微秒,给出函数,并举例

#include mmsystem.h

LONGLONG SchGetCurTicksCunt(VOID)

{

LARGE_INTEGERlitmp;

QueryPerformanceCounter(litmp);

return litmp.QuadPart;

}

例如多媒体时钟

单片机C语言中怎么实现微秒级延时?

可以用_nop_( )函数来实现微秒级的延时。

_nop_();            // 直接当成一条语句使用,产生一条NOP指令

NOP指令为单周期指令,可由晶振频率算出延时时间,对于12M晶振,延时1uS。

注:使用该函数时,需要将头文件#includeintrins.h包含进源文件中。

求一个C语言的微秒级延时函数

一个微秒级的延时函数今天要用到一个微秒级的定时函数,到网上search下,找了几个都不能用,我晕,无奈,还是自己动手比较好,赶紧贴出来。

免得以后要用的时候又不知道那里去找,方便自己也方便大家^_^ 又避免重复发明轮子^_^

/********************************************************************

Created: 2006/09/02

FileName: t.c

Author: Liu Qi

Purpose: 测试微秒级延时

*********************************************************************/

#include windows.h

#include time.h

#include stdio.h

ULONG GetTimeDis(struct tm first, struct tm second) //计算两次时间差

{

return abs((first.tm_hour * 3600 + first.tm_min * 60 + first.tm_sec)

- (second.tm_hour * 3600 + second.tm_min * 60 + second.tm_sec));

}

void Delay(ULONG ulMicroSeconds)

{

LARGE_INTEGER timeStop;

LARGE_INTEGER timeStart;

LARGE_INTEGER Freq;

ULONG ulTimeToWait;

if (!QueryPerformanceFrequency( Freq ))

return;

ulTimeToWait = Freq.QuadPart * ulMicroSeconds / 1000 / 1000;

QueryPerformanceCounter ( timeStart );

timeStop = timeStart;

while( timeStop.QuadPart - timeStart.QuadPart ulTimeToWait )

{

QueryPerformanceCounter( timeStop );

}

}

int main(void)

{

struct tm timeStart, timeEnd;

_getsystime(timeStart);

Delay(1000 * 1000 * 3); //3秒

_getsystime(timeEnd);

printf("用时:%d秒\n", GetTimeDis(timeStart, timeEnd));

return 0;

}


分享名称:c语言获取微秒函数,c++获取微秒
转载来源:http://scyanting.com/article/hccddg.html