1. 程式人生 > >C++ 獲取當前時間毫秒數(相容windows和linux)

C++ 獲取當前時間毫秒數(相容windows和linux)

#ifdef _WIN32
	#include <winsock2.h>
	#include <time.h>
#else
	#include <sys/time.h>
#endif

unsigned long long GetCurrentTimeMsec()
{
#ifdef _WIN32
		struct timeval tv;
		time_t clock;
		struct tm tm;
		SYSTEMTIME wtm;

		GetLocalTime(&wtm);
		tm.tm_year = wtm.wYear - 1900;
		tm.tm_mon = wtm.wMonth - 1;
		tm.tm_mday = wtm.wDay;
		tm.tm_hour = wtm.wHour;
		tm.tm_min = wtm.wMinute;
		tm.tm_sec = wtm.wSecond;
		tm.tm_isdst = -1;
		clock = mktime(&tm);
		tv.tv_sec = clock;
		tv.tv_usec = wtm.wMilliseconds * 1000;
		return ((unsigned long long)tv.tv_sec * 1000 + (unsigned long long)tv.tv_usec / 1000);
#else
        struct timeval tv;
        gettimeofday(&tv,NULL);
        return ((unsigned long long)tv.tv_sec * 1000 + (unsigned long long)tv.tv_usec / 1000);
#endif
    }

相關推薦

C++ 獲取當前時間毫秒相容windowslinux

#ifdef _WIN32 #include <winsock2.h> #include <time.h> #else #include <sys/time.h&g

設定檔案的許可權,阻止使用者訪問相容WindowsLinux

最近的一個專案中需要修改本地檔案的許可權,即對其“加鎖”,使得使用者在解鎖之前不能對其訪問,要求在Windows和Linux下都能執行起來。我們都知道,Linux擁有很嚴格很規範的許可權管理,Linux之所以安全,很大原因也是因為它的許可權管理,因此在Linux

C#獲取當前時間毫秒

在.Net下DateTime.Ticks獲得的是個long型的時間整數,具體表示是至0001 年 1 月 1 日午夜 12:00:00 以來所經過時間以100納秒的數字。轉換為秒為Ticks/10000000,轉換為毫秒Ticks/10000。 如果要獲取從1970年1月1日至當前時間所經過的毫

jmeter獲取當前時間戳方法以秒為單位

採用js引數化方法:new Date().getTime()獲取到的值單位為毫秒。轉化為秒:${__javaScript(new Number(parseInt(new Date().getTime()/1000)).toString(),expired)}

C++獲得毫秒級的時間差支援Windows Linux

fatal error: windows.h: No such file or directory 我這裡Windows 裡面引用了 #include <windows.h> ,使用下面的方法測量函式執行時間 #include <iostream> #includ

C++遍歷資料夾下所有的wav檔案支援windowsLinux

直接上程式碼: #include <iostream> #include <string> #include <vector> #include <fstream> #include <string.h> #includ

除錯時直接顯示QString的字元值包含windowslinux

在用Qt進行程式設計除錯的時候,總是要檢視Qt各類變數的值,遺憾的是,無論是windows的VisualStudio還是linux上的gdb,對Qt定義的資料型別等支援並不友好。例如,想要看到QString字元創的值,在windows上要在變數視窗點選好幾層才能看到,而在

C++獲取當前時間年月日、時分秒、毫秒

獲取時間: 年-月-日(YYmmdd) 時:分:秒(HHMMSS) 毫秒(MS) 效率問題需要再優化 程式碼: #include <iostream> #include <

Linuxc獲取當前時間精確到秒毫秒或者微秒

獲取當前的時間的秒數和微秒數本方法需要用到gettimeofday()函式,該函式需要引入的標頭檔案是sys/time.h 。 函式說明int gettimeofday (struct timeval * tv, struct timezone * tz)

C#下獲取當前毫秒的方法程式碼

在.Net下DateTime.Ticks獲得的是個long型的時間整數,具體表示是至0001 年 1 月 1 日午夜 12:00:00 以來所經過時間以100納秒的數字。轉換為秒為Ticks/1000

C#獲取當前時間詳解

部分 date itl http 小數 sta logs edi static 【轉】C#獲取當前日期時間(轉) http:[email protected]/* *//blog/static/549639712010112921658843/ 我們可

jmeter測接口獲取當前時間

當前時間 pan 好的 style end == weekend asc spa 最近有個項目涉及到上傳當天/當前周的一個總結計劃 。 這樣自動化測試接口的時候每次都需要修改日期,不勝其擾。果斷上傳獲取當前日的一個函數,在此做一下記錄: ${__javaScript

Linux下用C獲取當前時間

time() 使用 ble timespec -1 ber 區間 本地 指向 Linux下用C獲取當前時間,具體如下: 代碼(可以把clock_gettime換成time(NULL)) ? 1 2 3 4 5 6 7 8 9 10 void getN

c#獲取當前時間的本週、本月、本季、本年的開始結束時間

using System; public enum DataTimeType { Week, Month, Season, Year } public class DataTimeManager { /// <summary> ///

c 獲取當前時間並格式化輸出

#define BUFLEN 255 #include<stdio.h> #include<time.h> int main() { time_t t = time( 0 ); char tmpBuf[BUFLEN]; strf

C# 獲取當前時間,格式化輸出

C# 獲取當前時間(帶毫秒) DateTime.Now.ToString("yyyyMMddHHmmssfff"); 相信yyyyMMddHHmmss各位都看的懂,fff就是指毫秒數f指的是一位的毫秒ff是2位的...fffffff是7位的下面附上時間格式的說明: d

c#獲取當前時間是本年的第幾周,本月的第幾周

獲取本月的第幾周: private static int getWeekNumInMonth(DateTime daytime) { int dayInMon

C# 獲取當前時間戳,將時間戳轉換為當前本地時間

/// <summary> /// 獲取當前本地時間戳 /// </summary> /// <returns></returns> pub

Objective-c 獲取當前時間

float currentTimeMillis = [[NSDatedate] timeIntervalSince1970] * 1000; NSLog(@"currentTimeMillis = %f", currentTimeMillis); 以上程式碼相當於 Jav

C++獲取當前時間戳,並轉化成格式化時間

#include<stdio.h> #include<windows.h> #include<iostream> #include<time.h> #include<sstream> #include<chr