调用API的响应时间

调用API的响应时间,第1张

你是想得到这个调用用掉的时间

如果是这个 那这样子吧

long timeStart = SystemcurrentTimeMillis();

调用API的函数。。。。

long time = SystemcurrentTimeMillis() - timeStart;

这个time是以毫秒为单位,要用秒的话,请除以1000

1,可以去MSDN查,

2,可以用GetSystemTime,也可以用MFC中的CTimte里的成员函数GetSystemTime,然后用CTime里的FORMATE函数输出:

3,这个函数在WINDOWSH里,如果要用CTime,创建控制台程序里选择MFC选项

以下给出CTime的用法,很直白,容易理解

void CurrentSystemTime()

{

CTime time = CTime::GetCurrentTime();;

CString s;

s = timeFormat(TEXT("%m/%d/%Y,%H:%M:%S"));

AfxMessageBox(s);

}

其中time 初始化为当前系统时间,然后声明一个字符串,将其格式化为

月份/日期/年份,小时:分钟:秒数

然后调用AFXMESSAGEBOX将其输出即可

MFC类可以通过包含stdafxh调用

一、步骤如下:

long currentTime = SystemcurrentTimeMillis() + 30 60 1000;

Date date = new Date(currentTime);

DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

String nowTime="";

nowTime= dfformat(date);

Systemoutprintln(nowTime);

二、分析:

1、获取当前时间,获取到的时间类型是long类型的,单位是毫秒

2、在这个基础上加上30分钟:currentTime +=30601000;

3、格式化时间,获取到的就是当前时间半个小时之后的时间Date date=new Date(currentTime);

4、建立时间格式化对象:

SimpleDateFormat dateFormat = new SimpleDateFormat(

"yyyy-MM-dd HH:mm:ss");

扩展资料

JDK(Java Development Kit)称为Java开发包或Java开发工具,是一个编写Java的Applet小程序和应用程序的程序开发环境。JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一些Java工具和Java的核心类库(Java API)。

不论什么Java应用服务器实质都是内置了某个版本的JDK。主流的JDK是Sun公司发布的JDK,除了Sun之外,还有很多公司和组织都开发了自己的JDK,例如,IBM公司开发的JDK,BEA公司的Jrocket,还有GNU组织开发的JDK

另外,可以把Java API类库中的Java SE API子集和Java虚拟机这两部分统称为JRE(JAVA Runtime Environment),JRE是支持Java程序运行的标准环境

(参考资料 百度百科 Java)

1、用TextOut是能够显示出来的,你可能没注意转化格式。编译器和VC助手会提醒你TextOut(hdc,x,y,str,strlen(str))里面的str应该是char格式。

2、而你获取时间的GetLocalTime(&st)里的st是结构体SYSTEMTIME。你应该首先转化格式。可以用sprintf(str,"",)。注意加头文件include <stringh>

3、TextOut(hdc,x,y,str,strlen(""))里面的x与y是否给定了明确的值?str这个变量没有在前面声明,strlen("")里面无字符,这样输出的结果自然是零个字符,TextOut最后一个参数项是控制输出字符的个数的。你应该改为strlen(str)

当你使用strXX的时候,就应该记得加头文件<stringh>

4、你使用hdc的时候,注意要用到一个相对应的函数释放DC,这样才不容易发生内存错误。与BeginPaint()对应的是EndPaint(HWND ,PAINTSTRUCT)。

5、HDC hdc;

SYSTEMTIME st;

PAINTSTRUCT ps;

这些声明你只在传递WM_PAINT消息时才用到,所以大可不必在该消息外声明。你只要在case下面加个{},将声明和实现函数放在这个{}内就可以避开编译器报错。

typedef struct _SYSTEMTIME {

WORD wYear;

WORD wMonth;

WORD wDayOfWeek;

WORD wDay;

WORD wHour;

WORD wMinute;

WORD wSecond;

WORD wMilliseconds;

} SYSTEMTIME, PSYSTEMTIME, LPSYSTEMTIME;

你首先要明白你用来获取时间的这个结构体。

typedef unsigned short WORD;

只要你会用右键菜单的“转到XX的定义”(英文版的好像是“defined to”),只要点击一下,就会去到该结构体或变量的声明里去,你就会知道该结构体里的内容有什么,或者该类型实际上是什么类型转化而来的。

看我修正后的代码:

include <stringh>

…………

case WM_PAINT:

{

HDC hdc;

SYSTEMTIME st;

PAINTSTRUCT ps;

char str[31]="";

struct WEEK

{

char temp[10];

}wk[7]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};

GetLocalTime(&st);

hdc=BeginPaint(hwnd,&ps);

sprintf(str,"%04d-%02d-%02d %02d:%02d:%02d %s",stwYear,stwMonth,stwDay,stwHour,stwMinute,stwSecond,wk[stwDayofWeek]temp);

TextOut(hdc,10,10,str,strlen(str));

EndPaint(hwnd,&ps);

}

break;

以上就是关于调用API的响应时间全部的内容,包括:调用API的响应时间、请问c++中如何调用windows API 比如我想用到API中获得当前系统时间的函数,请给出代码谢谢诶、java获取当前时间加半小时之后的时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

    保存