请问在C语言里怎么获取当前时间和日期(精确到毫秒)

请问在C语言里怎么获取当前时间和日期(精确到毫秒),第1张

你试试下面的程序:

#include

#include

#include

int

main()

{

clock_t

start,

finish;

double

elapsed_time;

start=clock();

//do

sonething

finish=clock();

elapsed_time

=

finish-start;

}

我在vc++

60下运行,可以得到以毫秒为单位的计时

#include <iostream>

#include <windowsh>

using namespace std;

void main()

{

SYSTEMTIME time;//时间结构声明,这个结构是系统的,

GetSystemTime( &time ); //调用获取系统时间api

//GetLocalTime();这个函数是获取本地时间api

char t_y;

char t_m;

char t_h;

char t_Min;

char t_s;

char t_Mi;

char t_d;

char t_w;

SYSTEMTIME time;//时间结构声明,这个结构是系统的,

GetSystemTime( &time );//调用获取系统时间api

sprintf(t_y, "%d", timewYear);//将年份格式输出到t_y变量中

sprintf(t_m, "%d", timewMonth);

sprintf(t_w, "%d", timewDayOfWeek);

sprintf(t_d, "%d", timewDay);

sprintf(t_h, "%d", timewHour);

sprintf(t_Min, "%d", timewMinute);

sprintf(t_s, "%d", timewSecond);

sprintf(t_Mi, "%d", timewMilliseconds);

printf("%s,%s,%s,%s,%s,%s,%s,%s",

timewYear,

timewMonth,

timewDayOfWeek,

timewDay,

timewHour,

timewMinute,

timewSecond,

timewMilliseconds);

}

/

SYSTEM结构成员如下:

 SYSTEMTIME STRUCT

{

WORD wYear ; 年

WORD wMonth ;月

WORD wDayOfWeek ;星期,0=星期日,1=星期一

WORD wDay ;日

WORD wHour ;时

WORD wMinute ;分

WORD wSecond ;秒

WORD wMilliseconds ;毫秒

}SYSTEMTIME ENDS

///

使用 date +%s%N 可以获得一个纳秒级的unix时间戳(当前时间),然后根据需要截取一部分即可得到毫秒级的精度

例如 echo $[$(date +%s%N)/1000000] 即为毫秒级时间戳

如果是指定某个时间字符串对应的时间戳,则将上面的 date +%s%N 更改为

date -d "时间字符串" +%s%N

软糖来回答吧

1使用DateTimeNow函数

DateTime 当前时间 = DateTimeNow;

string 毫秒 = 当前时间ToString(@"ss\:fff"); //显示2位秒数和秒数后面3位

2使用高精度计时器API

        //用于得到高精度计时器(如果存在这样的计时器)的值。微软对这个API解释就是每秒钟某个计数器增长的数值。

        //如果安装的硬件不支持高精度计时器,函数将返回false需要配合另一个API函数QueryPerformanceFrequency。

        [DllImport("kernel32dll ")]

        static extern bool QueryPerformanceCounter(ref long lpPerformanceCount);

        [DllImport("kernel32")]

        static extern bool QueryPerformanceFrequency(ref long PerformanceFrequency);

        

        public void 测试2()

        {

            long a = 0;

            QueryPerformanceFrequency(ref a);

            long b = 0, c = 0;

            QueryPerformanceCounter(ref b);

            ThreadSleep(2719);

            QueryPerformanceCounter(ref c);

            ConsoleWriteLine((c - b) / (decimal)a);  //单位秒

        }

如满意,请采纳,谢谢。

以上就是关于请问在C语言里怎么获取当前时间和日期(精确到毫秒)全部的内容,包括:请问在C语言里怎么获取当前时间和日期(精确到毫秒)、求C++获取系统时间源代码,精确到毫秒、shell获取时间精确到毫秒级别是哪个命令等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9516020.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存