7-124 获取系统时间

来源:互联网 发布:windows画图 编辑:程序博客网 时间:2024/06/03 09:29
#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();}
0 0