1. 獲取高精度時間戳
主要用於測試一段**的執行時間。通過cpu的 tick-per-secs 來獲取,可以精確到微秒甚至更高。比gettickcount() api精確到毫秒要更加精確。
**如下:
large_integer startingtime, endingtime, elapsedmicroseconds;
large_integer frequency;
queryperformancefrequency(&frequency);
queryperformancecounter(&startingtime);
for ( int i = 0; i < 1000; i++)
queryperformancecounter(&endingtime);
elapsedmicroseconds.quadpart = endingtime.quadpart - startingtime.quadpart;
elapsedmicroseconds.quadpart *= 1000; // ms
elapsedmicroseconds.quadpart /= frequency.quadpart;
printf("time is %i64d ms\n", elapsedmicroseconds.quadpart);
2. windows獲取版本號
在win8及其以後的版本,使用getversionex() api 獲取的版本號資訊結構體是有問題的,可以使用如下的方法來相容到win10中。
到了win10下就有微軟建議的獲取系統版本方法。可以參考msdn。
osversioninfoexw osver;
zeromemory(&osver, sizeof(osver));
osver.dwosversioninfosize = sizeof(osver);
getversionexw((lposversioninfow)&osver);
printf("getversionexw -- major: %d, minor: %d, build: %d\n", osver.dwmajorversion, osver.dwminorversion, osver.dwbuildnumber);
// 嘗試用rtlgetversion獲取
typedef long (ntapi * pfn_rtlgetversion)(out prtl_osversioninfow);
pfn_rtlgetversion _rtlgetversion = (pfn_rtlgetversion)getprocaddress(getmodulehandle(_t("ntdll")), "rtlgetversion");
if (_rtlgetversion)
}
3. *** PHP常用功能塊
一 php中錯誤分類 1.語法錯誤 2.執行時錯誤 3.邏輯錯誤 二 在php.ini配置檔案中,常用的錯誤和日誌的配置。error reporting 錯誤等級 display errors 在瀏覽器中是否顯示錯誤資訊 log errors on 是否啟動日誌記錄 使用函式臨時設定錯誤資訊 ini...
sap pp各功能塊簡單介紹(一)
是主生產計畫員負責維護的預先建立的乙份計畫,主生產計畫驅動mrp,能反映出企業計畫生產什麼,什麼時候生產以及生產多少。r 3主計畫模組包括需求管理 demand management 生產計畫管理 production planning 及主生產計畫 mps 其中需求管理與銷售與運作計畫 sop 及...
sap pp各功能塊簡單介紹(一)
是主生產計畫員負責維護的預先建立的乙份計畫,主生產計畫驅動mrp,能反映出企業計畫生產什麼,什麼時候生產以及生產多少。r 3主計畫模組包括需求管理 demand management 生產計畫管理 production planning 及主生產計畫 mps 其中需求管理與銷售與運作計畫 sop 及...