You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
1.2 KiB
C++
70 lines
1.2 KiB
C++
#include "common.h"
|
|
|
|
// place your code here
|
|
char* DWORD2Time(uint32_t dwTime)
|
|
{
|
|
if(!dwTime)
|
|
return(strdup(""));
|
|
|
|
uint32_t dwHours = dwTime/3600;
|
|
uint32_t dwMinutes = (dwTime-(dwHours*3600))/60;
|
|
uint32_t dwSeconds = (dwTime-(dwHours*3600)-dwMinutes*60);
|
|
char szStr[100];
|
|
|
|
if(dwHours)
|
|
sprintf(szStr, "%d:%02d:%02d", dwHours, dwMinutes, dwSeconds);
|
|
else
|
|
sprintf(szStr, "%d:%02d", dwMinutes, dwSeconds);
|
|
|
|
return(strdup(szStr));
|
|
}
|
|
|
|
char* DWORD2String(uint32_t dwValue)
|
|
{
|
|
if(!dwValue)
|
|
return(strdup(""));
|
|
|
|
char szStr[100];
|
|
|
|
sprintf(szStr, "%d", dwValue);
|
|
return(strdup(szStr));
|
|
}
|
|
|
|
uint32_t Time2DWORD(char* lpszTime)
|
|
{
|
|
if(!strlen(lpszTime))
|
|
return(0);
|
|
|
|
char szHour[100] = {0};
|
|
char szMinute[100] = {0};
|
|
char szSecond[100] = {0};
|
|
char sz[100];
|
|
|
|
strcpy(sz, lpszTime);
|
|
if(strrchr(sz, ':'))
|
|
{
|
|
strcpy(szSecond, strrchr(sz, ':')+1);
|
|
*strrchr(sz, ':') = 0;
|
|
if(strchr(sz, ':'))
|
|
{
|
|
strcpy(szMinute, strchr(sz, ':')+1);
|
|
*strchr(sz, ':') = 0;
|
|
strcpy(szHour, sz);
|
|
}
|
|
else
|
|
strcpy(szMinute, sz);
|
|
}
|
|
else
|
|
strcpy(szSecond, sz);
|
|
|
|
|
|
return(atol(szHour)*3600+atol(szMinute)*60+atol(szSecond));
|
|
}
|
|
|
|
uint32_t String2DWORD(char* lpszStr)
|
|
{
|
|
if(!strlen(lpszStr))
|
|
return(0);
|
|
return(atol(lpszStr));
|
|
}
|