#include "stdafx.h"
#include <sys/timeb.h>
#include <time.h>
#include <iostream>
using namespace std;
class TIME
{
private:
double timeM; //总时间,换算为毫秒
int time_H; //时
int time_M; //分
int time_S; //秒
double millisecond;//毫秒
public:
void cal(); //计算当前时间
double getSystime();//获取总时间
int getH(); //获取时
int getM(); //获取分
int getS(); //获取秒
};
void TIME::cal()
{
struct _timeb timebuffer; //时间缓冲变量
char *timeline;
unsigned short millitml;
char temp_H[2]; //字符变换量
char temp_M[2];
char temp_S[2];
_ftime(&timebuffer); //获取缓冲量
timeline=ctime(&(timebuffer.time));//转换为char*型
millitml=timebuffer.millitm; //获取毫秒值
millisecond=(double)millitml/1000; //变量为真正的毫秒
for(int i=0;i<2;i++)
{
temp_H[i]=timeline[i+11];//从第11字节开始为时的字符值,下同
}
for(int j=0;j<2;j++)
{
temp_M[j]=timeline[j+14];//分的字符值
}
for(int k=0;k<2;k++)
{
temp_S[k]=timeline[k+17];//秒的字符值
}
time_H=atoi(temp_H);//时变换为整型
time_M=atoi(temp_M);//分变换为整型
time_S=atoi(temp_S);//秒变换为整型
timeM=double(time_H)*3600+double(time_M)*60+double(time_S)+millisecond;
}
double TIME::getSystime()
{
return timeM; //返回总时间
}
int TIME::getH()
{
return time_H; //返回时
}
int TIME::getM()
{
return time_M; //返回分
}
int TIME::getS()
{
return time_S; //返回秒
}
void main()
{
TIME t;
t.cal();
cout<<"当前系统时间值:"<<t.getSystime()<<"毫秒"<<endl;
cout<<"时:"<<t.getH()<<endl;
cout<<"分:"<<t.getM()<<endl;
cout<<"秒:"<<t.getS()<<endl;
getchar();
}
7-124 获取系统时间
最新推荐文章于 2022-10-17 16:26:27 发布