static
inline
int64_t
floordiv
(int64_t a,
int b)
static
inline
intfloordiv
(int a,
int b)
// 當前的日期對應的儒略日
static
inline
int64_t
juliandayfromdate
(int year,
int month,
int day)
/* * math from the calendar faq at
* this formula is correct for all julian days, when using mathematical integer
* division (round to negative infinity), not c++11 integer division (round to zero)
*/int a =
floordiv(14
- month,12)
;int64_t y =
(int64_t
)year +
4800
- a;
int m = month +
12* a -3;
return day +
floordiv
(153
* m +2,
5)+365
* y +
floordiv
(y,4)-
floordiv
(y,100)+
floordiv
(y,400)-
32045;}
注:qt使用qint64,c++使用int64_t
enum
;// 當前的時間對應的毫秒數
static
inline
unsigned
intmsecsfromdecomposed
(int hour,
int minute,
int sec,
int msec =0)
q_os_win:
#include
// 獲取日期、時間
systemtime st;
memset
(&st,0,
sizeof
(systemtime));
getlocaltime
(&st)
;typedef
struct _systemtime systemtime,
*psystemtime,
*lpsystemtime;
getlocaltime:獲取本地時間
getsystemtime:獲取通用協調時(utc, universal time coordinated)
// 當前utc時間距離1970.1.1過去的毫秒數
int64_t
currentmsecssinceepoch()
// 當前utc時間距離1970.1.1過去的秒數
int64_t
currentsecssinceepoch()
q_os_unix:
// 當前utc時間距離1970.1.1過去的毫秒數
int64_t
currentmsecssinceepoch()
// 當前utc時間距離1970.1.1過去的秒數
int64_t
currentsecssinceepoch()
struct timeval
;
c 列舉在跨平台下的陷進
看上去一切正常,windows伺服器下也執行正常,但linux伺服器下卻無法自動觸發事件 後來發現,應該也無法顯式觸發事件,但eventid在設定觸發狀態時被強轉賦值了另乙個int,避免了這個問題,也增加了問題的隱蔽性。gdb除錯後發現event.prvindex,event.curindex都為6...
Android平台下sax,dom,pull解析
1.android中三種xml的解析方式,分別為dom,sax,pull,其中pull的解析方式最優 2.dom,sax,pull解析方式的區別 1 dom解析方式 首先一下子載入整個文件然後再挨個節點解析,費流量 優點 對於處理大文件,以及能力強的cpu效能比較快 缺點 對於處理能力不夠強的cpu...
Android平台下sax,dom,pull解析
1.android中三種xml的解析方式,分別為dom,sax,pull,其中pull的解析方式最優 2.dom,sax,pull解析方式的區別 1 dom解析方式 首先一下子載入整個文件然後再挨個節點解析,費流量 優點 對於處理大文件,以及能力強的cpu效能比較快 缺點 對於處理能力不夠強的cpu...