1. 如何獲取linux毫秒級的當前時間
1、clock --show
Tue 29 Aug 2017 01:14:21 PM CST -0.396903 seconds
2、date
date +%Y%m%d-%H:%M:%S.%N
2. linux怎麼用c獲取當前時間
Linux C編程獲取當前時間用time這個函數,time函數會返回一個time_t類型的時間戳(這個time_t類型實際上是一個長整型,定義在time.h頭文件中)。time函數的函數原型是這樣的:
time_t time(time_t *tloc);
使用time函數需要包含time.h頭文件:
#include <time.h>
調用time函數的代碼是這樣的:
time_t t;
t=time((time_t *) 0);
因為time函數參數的作用和返回值一樣,只是用於接收時間戳,所以這里調用time函數可以傳入一個空指針,表示只用它的返回值,不用指針參數來接收時間戳。
因為time函數只是返回一個時間戳,如果想列印直觀的時間信息,可以把剛才的time_t作為參數調用ctime函數,ctime函數會返回一個字元串,ctime函數的調用是這樣的:
printf("The time and date is: %s", ctime(&t));
t就是剛才調用time函數返回的time_t類型變數。
3. Linux下C語言獲得系統時間的方法
沒有完整程序, 不過能提供一點資料
int gettimeofday(struct timeval * tv,struct timezone *tz);
這個函數可以獲取當前時間, 貌似只要第一個結構體就行了
struct timeval
{
time_t tv_sec; //秒 [long int]
suseconds_t tv_usec; //微秒 [long int], (10E-6 second)
};
struct timeval
{
long tv_sec;
long tv_usec;
};
然後取微秒的前三位就是小數了, 之後把秒 tv_sec 轉化為 tm 格式, 參數用秒的指針就行
struct tm * gmtime(const time_t * t);
//轉換成格林威治時間。有時稱為GMT或UTC。
struct tm * localtime(const time_t *t);
//轉換成本地時間。它可以透過修改TZ環境變數來在一台機器中,不同使用者表示不同時間.
下面是tm的部分參數
int tm_sec; //tm_sec表「秒」數,在[0,61]之間,多出來的兩秒是用來處理跳秒問題用的。/* Seconds: 0-59 (K&R says 0-61?) */
int tm_min; //tm_min表「分」數,在[0,59]之間。
int tm_hour; //tm_hour表「時」數,在[0,23]之間。
int tm_mday; //tm_mday表「本月第幾日」,在[1,31]之間。
int tm_mon; //tm_mon表「本年第幾月」,在[0,11]之間。
int tm_year; //tm_year要加1900表示那一年。 /* /* 年份,其值從1900開始 */*/
int tm_wday; //tm_wday表「本周第幾日」,在[0,6]之間。 /* Days since Sunday (0-6) */ /*其中0代表星期天,1代表星期一,以此類推 */
int tm_yday; //tm_yday表「本年第幾日」,在[0,365]之間,閏年有366日。 /*其中0代表1月1日,1代表1月2日,以此類推 */*/
int tm_isdst; //tm_isdst表是否為「日光節約時間」
------------------------------華麗麗的分割線--------------------------------------------------
由於很長時間沒編程了, 也沒有Linux環境, 我就簡單寫幾行代碼, 僅作參考
#include <stdio.h>
#include <time.h>
#include <sys/time.h>
#include<unistd.h>
//這四個不一定夠用了
struct timeval tv;
struct timezone tz;
struct tm * p_tm;
//變數沒有初始化習慣不好,不要學
gettimeofday(&tv, &tz);
p_tm = gmtime( (const time_t *)&tv.tv_sec );
字元串的組裝尤其格式問題自己解決吧
年 p_tm->tm_year+ 1900
月 p_tm->tm_mon+ 1
日 p_tm->tm_mday
時 p_tm->tm_hour+ 1
分 p_tm->tm_min+ 1
秒 p_tm->tm_sec+ 1
小數點後面的部分,注意不夠三位還是前面填充0 tv.tv_sec/1000
4. c如何獲取精確到毫秒的時間
1.使用CTime類(獲取系統當前時間,精確到秒)
CString str;
//獲取系統時間
CTime tm;
tm=CTime::GetCurrentTime();//獲取系統日期
str=tm.Format("現在時間是%Y年%m月%d日 %X");
MessageBox(str,NULL,MB_OK);
a,從CTimet中提取年月日時分秒
CTime t = CTime::GetCurrentTime();
int d=t.GetDay(); //獲得幾號
int y=t.GetYear(); //獲取年份
int m=t.GetMonth(); //獲取當前月份
int h=t.GetHour(); //獲取當前為幾時
int mm=t.GetMinute(); //獲取分鍾
int s=t.GetSecond(); //獲取秒
int w=t.GetDayOfWeek(); //獲取星期幾,注意1為星期天,7為星期六
b,計算兩段時間的差值,可以使用CTimeSpan類,具體使用方法如下:
CTime t1( 1999, 3, 19, 22, 15, 0 );
CTime t = CTime::GetCurrentTime();
CTimeSpan span=t-t1; //計算當前系統時間與時間t1的間隔
int iDay=span.GetDays(); //獲取這段時間間隔共有多少天
int iHour=span.GetTotalHours(); //獲取總共有多少小時
int iMin=span.GetTotalMinutes();//獲取總共有多少分鍾
int iSec=span.GetTotalSeconds();//獲取總共有多少秒
c,獲得當前日期和時間,並可以轉化為CString
CTime tm=CTime::GetCurrentTime(); CString str=tm.Format("%Y-%m-%d");//顯示年月日
2.使用GetLocalTime:Windows API 函數,獲取當地的當前系統日期和時間 (精確到毫秒)
此函數會把獲取的系統時間信息存儲到SYSTEMTIME結構體里邊
typedef struct _SYSTEMTIME
{
WORD wYear;//年
WORD wMonth;//月
WORD wDayOfWeek;//星期:0為星期日,1為星期一,2為星期二……
WORD wDay;//日
WORD wHour;//時
WORD wMinute;//分
WORD wSecond;//秒
WORD wMilliseconds;//毫秒
}SYSTEMTIME,*PSYSTEMTIME;
5. linux下,記錄響應時間的腳本,精確到毫秒ms
gettimeofday(取得目前的時間)
相關函數
time,ctime,ftime,settimeofday
表頭文件
#include <sys/time.h>
#include <unistd.h>
定義函數
int gettimeofday ( struct timeval * tv , struct timezone * tz )
函數說明
gettimeofday()會把目前的時間有tv所指的結構返回,當地時區的信息則放到tz所指的結構中。
timeval結構定義為:
struct timeval{
long tv_sec; /*秒*/
long tv_usec; /*微秒*/
};
timezone 結構定義為:
struct timezone{
int tz_minuteswest; /*和Greenwich 時間差了多少分鍾*/
int tz_dsttime; /*日光節約時間的狀態*/
};
上述兩個結構都定義在/usr/include/sys/time.h。tz_dsttime 所代表的狀態如下
DST_NONE /*不使用*/
DST_USA /*美國*/
DST_AUST /*澳洲*/
DST_WET /*西歐*/
DST_MET /*中歐*/
DST_EET /*東歐*/
DST_CAN /*加拿大*/
DST_GB /*大不列顛*/
DST_RUM /*羅馬尼亞*/
DST_TUR /*土耳其*/
DST_AUSTALT /*澳洲(1986年以後)*/
返回值
成功則返回0,失敗返回-1,錯誤代碼存於errno。附加說明EFAULT指針tv和tz所指的內存空間超出存取許可權。
範例
#include<sys/time.h>
#include<unistd.h>
main(){
struct timeval tv;
struct timezone tz;
gettimeofday (&tv , &tz);
printf(「tv_sec; %d\n」, tv,.tv_sec) ;
printf(「tv_usec; %d\n」,tv.tv_usec);
printf(「tz_minuteswest; %d\n」, tz.tz_minuteswest);
printf(「tz_dsttime, %d\n」,tz.tz_dsttime);
}
執行
tv_sec: 974857339
tv_usec:136996
tz_minuteswest:-540
tz_dsttime:0
6. 如何獲取linux毫秒級的當前時間
24小時,就是相差一天,所以變化的只有天數。
我這里提供一個笨方法:
用date獲取當前日期和時間,格式化成你的文件命名格式,用下面的字元串截取方法獲得天數:
${varible:n1:n2}:截取變數varible從n1到n2之間的字元串
天數減1後,重新組織成新的字元串。
用循環比較 ls 出來的文件名與這個字元串。
代碼試過後再放上來。
7. Linux命令
快照功能:記錄當前的硬碟的狀態。剛建快照時快照佔用內存為0,標記了當前硬碟的存儲狀態。當虛擬機對快照標記的內容改寫時,會將改寫的內容存儲進快照,與未改寫的部分整合得到完整的快照。當快照標記的部分被完全改寫,那麼快照存儲空間完整記錄了當時拍攝時的內存狀態。
參數形式
第一種:參數用一橫的說明後面的參數是字元形式。
第二種:參數用兩橫的說明後面的參數是單詞形式。
第三種:參數前有橫的是 System V風格。
第四種:參數前沒有橫的是 BSD風格。
cat、more、less、head、tail命令的比較:
cat命令可以一次顯示整個文件,如果文件比較大,使用不是很方便;
more命令可以讓屏幕在顯示滿一屏幕時暫停,按空格往前翻頁,按b往後翻頁。
less命令也可以分頁顯示文件,和more命令的區別就在於: 支持上下鍵卷動屏幕、查找;不需要在一開始就讀取整個文件,打開大文件時比more、vim更快。
head命令用於查看文件的前n行。
tail命令用於查看文件的後n行,加上-f命令,查看在線日誌非常方便,可以列印最新增加的日誌。
一般模式:
編輯模式:
命令模式:
編碼
多行操作(列編輯模式)
插入:ctrl+v進入列編輯模式,上下移動游標選擇需要插入的位置,然後輸入大寫I,輸入需要文本,最後按esc鍵退出,就會發現文本會在選擇的多行中插入。
刪除:ctrl+v進入列編輯模式,上下移動游標選中需要刪除的部分,然後按d,就會刪除選中的內容。
①head:顯示文件頭部內容
②tail:輸出文件尾部內容
注意:用vim和vi修改內容會刪除源文件並生成新文件,所以tail -f會失效。需要用到
追加和覆蓋語句(>或>>),才能被tail -f監視到。
一般用於查看小文件
查看壓縮文件中的文本內容
例:
①more:文件內容分屏查看器
②less:分屏顯示文件內容,效率比more高
1、簡單讀取
運行腳本如下
測試結果為:
2、-p 參數,允許在 read 命令行中直接指定一個提示。
運行腳本如下
測試結果為:
echo [選項] [輸出內容] (輸出內容到控制台)
輸出給定文本的sha256加密後的內容
①顯示當前時間信息
②顯示當前時間年月日
③顯示當前時間年月日時分秒
④顯示昨天
⑤顯示明天時間
⑥顯示上個月時間
需要注意的是取下個月的命令存在bug,執行如下命令會得到21-10,但是正常應該得到21-09,需要注意
date -d "2021-08-31 +1 month" +%y-%m
⑦修改系統時間
⑧獲取當前時間戳
獲取秒時間戳: date +%s
獲取毫秒時間戳:$[ (date +%s%N) /1000000]
查看日歷
(1)查看當前月的日歷
(2)查看2017年的日歷
例:
對比gzip/gunzip,zip/unzip可以壓縮文件和目錄且保留源文件。
①zip:壓縮
②unzip:解壓縮
只能壓縮文件不能壓縮目錄,不保留原來的文件。
gzip 文件 (只能將文件壓縮為*.gz文件)
gunzip 文件.gz (解壓縮文件命令)
例: crontab -e
(1)進入crontab編輯界面。會打開vim編輯你的工作。
(2)每隔1分鍾,向/root/longma.txt文件中添加一個11的數字
*/1 * * * * /bin/echo 」11」 >> /root/longma.txt
(3)可以用tail -f 目標文件來實施監控追加的內容
查看日誌
可以用tail -f /var/log/cron.log觀察
Cron表達式見文章: https://www.jianshu.com/writer#/notebooks/46619194/notes/75177408
ls [選項] [目錄或是文件]
cd [參數]
例: cd -P $(dirname $p1) ; pwd 先跳轉到文件的所在目錄,再列印$p1文件的實際路徑
概述
①cp():只能在本機中復制
②scp(secure ):可以復制文件給遠程主機
scp -r test.sh hxr@hadoop102:/root
③rsync(remote sync):功能與scp相同,但是不會改文件屬性
rsync -av test.sh test.sh hxr@hadoop102:/root
④nc(netcat):監聽埠,可以實現機器之間傳輸文件。
nc -lk 7777 (-l表示listen,-k表示keep)
強制覆蓋不提示的方法:cp
例:scp -r test.sh hxr@bigdata1:/root
例:rsync -av test.sh hxr@bigdata1:/root
例:
nc -lp 10000 > nc_test.txt
nc -w 1 hadoop102 < nc_test.txt
遠程登錄時默認使用的私鑰為~/.ssh/id_rsa
生成密鑰對
將公鑰發送到本機
將密鑰發送到需要登錄到本機的伺服器上
修改密鑰的許可權
遠程登陸
如果有多個節點需要遠程登陸,可以在.ssh下創建config並輸入
再次登陸
①正向代理:
②反向代理:
所謂「反向代理」就是讓遠端啟動埠,把遠端埠數據轉發到本地。
HostA 將自己可以訪問的 HostB:PortB 暴露給外網伺服器 HostC:PortC,在 HostA 上運行:
那麼鏈接 HostC:PortC 就相當於鏈接 HostB:PortB。
使用時需修改 HostC 的 /etc/ssh/sshd_config 的一條配置如下,不然啟動的進程監聽的ip地址為127.0.0.1,即只有本機可以訪問該埠。
相當於內網穿透,比如 HostA 和 HostB 是同一個內網下的兩台可以互相訪問的機器,HostC是外網跳板機,HostC不能訪問 HostA,但是 HostA 可以訪問 HostC。
那麼通過在內網 HostA 上運行 ssh -R 告訴 HostC,創建 PortC 埠監聽,把該埠所有數據轉發給我(HostA),我會再轉發給同一個內網下的 HostB:PortB。
同內網下的 HostA/HostB 也可以是同一台機器,換句話說就是 內網 HostA 把自己可以訪問的埠暴露給了外網 HostC。
例: 比如在我的內網機192.168.32.244上有一個RabbitMQ的客戶端,埠號為15672。現在我希望在外網上訪問固定ip的雲伺服器chenjie.asia的6009埠,通過跳板機192.168.32.243來轉發請求到192.168.32.244:15672,從而實現在外網訪問內網服務的功能,即內網穿透。
①在192.168.32.244上啟動RabbitMQ服務
②將chenjie.asia雲伺服器的私鑰復制到跳板機192.168.32.243的~/.ssh下,並重命名為id_rsa。通過如下命令看是否可以遠程登陸到雲服務,可以登陸則進行下一步。
③修改chenjie.asia伺服器的ssh配置文件 /etc/ssh/sshd_config ,允許其他節點訪問
然後重啟sshd服務
④在跳板機192.168.32.243啟動ssh反向代理
這個進程在關閉session時會停止,可以添加啟動參數 -CPfN
例:
以 root 身份執行的程序有了所有特權,這會帶來安全風險。Kernel 從 2.2 版本開始,提供了 Capabilities 功能,它把特權劃分成不同單元,可以只授權程序所需的許可權,而非所有特權。
例如:linux不允許非root賬號只用1024以下的埠,使用root啟動命令nginx,會導致nginx許可權過高太危險。所以用setcap命令
sudo setcap cap_net_bind_service=+eip /bigdata/nginx/sbin/nginx
正確的關機流程為 :sync > shutdown > reboot > halt
(1)sync (功能描述:將數據由內存同步到硬碟中)
(2)halt (功能描述:關閉系統,等同於shutdown -h now 和 poweroff)
(3)reboot (功能描述:就是重啟,等同於 shutdown -r now)
(4)shutdown [選項] [時間]
安裝
yum install -y telnet-server telnet
ls -i 顯示文件的節點號
find -inum 節點號 -delete 刪除指定的節點即可刪除對應的文件
啟動一個服務: systemctl start postfix.service
關閉一個服務: systemctl stop postfix.service
重啟一個服務: systemctl restart postfix.service
顯示一個服務的狀態: systemctl status postfix.service
在開機時啟用一個服務: systemctl enable postfix.service
在開機時禁用一個服務: systemctl disable postfix.service
註:在enable的時候會列印出來該啟動文件的位置
列出所有已經安裝的服務及狀態:
systemctl list-units
systemctl list-unit-files
查看服務列表狀態:
systemctl list-units --type=service
查看服務是否開機啟動: systemctl is-enabled postfix.service
查看已啟動的服務列表: systemctl list-unit-files | grep enabled
查看啟動失敗的服務列表: systemctl --failed
查看服務日誌: journalctl -u postfix -n 10 -f
命令類似systemctl,用於操作native service。
添加腳本為服務(需要指定啟動級別和優先順序): chkconfig --add [腳本]
刪除服務: chkconfig --del [腳本]
單獨查看某一服務是否開機啟動的命令 : chkconfig --list [服務名]
單獨開啟某一服務的命令 : chkconfig [服務名] on
單獨關閉某一服務的命令: chkconfig [服務名] off
查看某一服務的狀態: /etc/intd.d/[服務名] status
啟用服務就是在當前"runlevel"的配置文件目錄 /etc/systemd/system/multi-user.target.wants 里,建立 /usr/lib/systemd/system 裡面對應服務配置文件的軟鏈接;禁用服務就是刪除此軟鏈接,添加服務就是添加軟連接。
su 用戶名稱 (切換用戶,只能獲得用戶的執行許可權,不能獲得環境變數)
su - 用戶名稱 (切換到用戶並獲得該用戶的環境變數及執行許可權)
echo $PATH 列印環境變數
設置普通用戶具有root許可權
修改 /etc/sudoers 文件,找到下面一行(91行),在root下面添加一行,如下 所示:
或者配置成採用sudo命令時,不需要輸入密碼
修改完畢,現在可以用hxr 帳號登錄,然後用命令 sudo ,即可獲得root許可權進行操作。
以azkaban用戶執行引號中的命令
gpasswd -d [username] [groupname] 將用戶從組中刪除
gpasswd -a [username] [groupname] 將用戶加入到組中
用戶組的管理涉及用戶組的添加、刪除和修改。組的增加、刪除和修改實際上就是對 /etc/group文件的更新。
0首位表示類型 - 代表文件 d 代表目錄 l 鏈接文檔(link file)
三種特殊許可權suid、sgid、sticky
例子:
變更文件許可權方式一
例:chmod u-x,o+x houge.txt
變更文件許可權方式二
例:chmod -R 777 /mnt/ 修改整個文件夾的文件許可權
在linux中創建文件或者目錄會有一個默認許可權的,這個默認許可權是由umask決定的(默認為0022)。umask設置的是許可權的「補碼」,而我們常用chmod設置的是文件許可權碼。一般在/etc/profile 、~/.bashprofile 或者 ~/.profile中設置umask值。
umask計算
如root用戶的默認umask為0022(第一個0 代表特殊許可權位,這里先不考慮),創建的文件默認許可權是644(即默認666掩上umask的022),創建的目錄是755(即默認777掩上umask的022)。
對於root用戶的umask=022這個來說,777許可權二進制碼就是(111)(111)(111),022許可權二進制碼為(000)(010)(010)。
上面就是一個umask的正常計算過程,但是這樣實在是太麻煩了。我們使用如下的簡單的方法快速計算。
上面的這個方法計算是非常方便的, 為何得到奇數要+1呢?
文件的最大許可權是666,都是偶數,你得到奇數,說明你的umask有奇數啊,讀為4,寫為2,都是偶數,說明你有執行許可權的。
就按照上面的umask=023為例,在計算其他用戶許可權的時候6-3=3 ,6是讀寫,3是寫和執行,其實應該是讀寫許可權減去讀許可權的得到寫許可權的,相當於我們多減去了一個執行許可權。所以結果加1。
umask修改
如果想單獨修改某個文件夾的新建文件的許可權,可以使用setfacl命令。
例:遞歸改變文件所有者和所有組 chown -R hxr:hxr /mnt
例:
8. 在LINUX下用C++編程,如何獲取系統當前的時間。
//方案— 優點:僅使用C標准庫;缺點:只能精確到秒級
#include <time.h>
#include <stdio.h>
int main( void )
{
time_t t = time(0);
char tmp[64];
strftime( tmp, sizeof(tmp), "%Y/%m/%d %X %A 本年第%j天 %z",localtime(&t) );
puts( tmp );
return 0;
}
size_t strftime(char *strDest, size_t maxsize, const char *format, const struct tm *timeptr);
根據格式字元串生成字元串。
struct tm *localtime(const time_t *timer);
取得當地時間,localtime獲取的結果由結構tm返回
返回的字元串可以依下列的格式而定:
%a 星期幾的縮寫。Eg:Tue
%A 星期幾的全名。 Eg: Tuesday
%b 月份名稱的縮寫。
%B 月份名稱的全名。
%c 本地端日期時間較佳表示字元串。
%d 用數字表示本月的第幾天 (范圍為 00 至 31)。日期
%H 用 24 小時制數字表示小時數 (范圍為 00 至 23)。
%I 用 12 小時制數字表示小時數 (范圍為 01 至 12)。
%j 以數字表示當年度的第幾天 (范圍為 001 至 366)。
%m 月份的數字 (范圍由 1 至 12)。
%M 分鍾。
%p 以 ''AM'' 或 ''PM'' 表示本地端時間。
%S 秒數。
%U 數字表示為本年度的第幾周,第一個星期由第一個周日開始。
%W 數字表示為本年度的第幾周,第一個星期由第一個周一開始。
%w 用數字表示本周的第幾天 ( 0 為周日)。
%x 不含時間的日期表示法。
%X 不含日期的時間表示法。 Eg: 15:26:30
%y 二位數字表示年份 (范圍由 00 至 99)。
%Y 完整的年份數字表示,即四位數。 Eg:2008
%Z(%z) 時區或名稱縮寫。Eg:中國標准時間
%% % 字元。
//方案二 優點:能精確到毫秒級;缺點:使用了windows API
#include <windows.h>
#include <stdio.h>
int main( void )
{
SYSTEMTIME sys;
GetLocalTime( &sys );
printf( "%4d/%02d/%02d %02d:%02d:%02d.%03d 星期%1d\n",sys.wYear,sys.wMonth,sys.wDay,sys.wHour,sys.wMinute, sys.wSecond,sys.wMilliseconds,sys.wDayOfWeek);
return 0;
}
//方案三,優點:利用系統函數,還能修改系統時間
//此文件必須是c++文件
#include<stdlib.h>
#include<iostream>
using namespace std;
void main()
{
system("time");
}
//方案四,將當前時間折算為秒級,再通過相應的時間換算即可
//此文件必須是c++文件
#include<iostream>
#include<ctime>
using namespace std;
int main()
{
time_t now_time;
now_time = time(NULL);
cout<<now_time;
return 0;
}
9. 請問在C語言里怎麼獲取當前時間和日期(精確到毫秒)
先申明下,這個是我轉網路知道的,經常BAIDU一下,就OK了
#include <stdio.h>
#include <time.h>
void main ()
{
time_t rawtime;
struct tm * timeinfo;
time ( &rawtime );
timeinfo = localtime ( &rawtime );
printf ( "\007The current date/time is: %s", asctime (timeinfo) );
exit(0);
}
=================
#include <time.h> -- 必須態州的賀運時間函數頭文件
time_t -- 時間類型(time.h 定義)
struct tm -- 時間結構,time.h 定義如禪閉梁下:
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
time ( &rawtime ); -- 獲取時間,以秒計,從1970年1月一日起算,存於rawtime
localtime ( &rawtime ); -- 轉為當地時間,tm 時間結構
asctime ()-- 轉為標准ASCII時間格式:
星期 月 日 時:分:秒 年
=========================================
你要的格式可這樣輸出:
printf ( "%4d-%02d-%02d %02d:%02d:%02d\n",1900+timeinfo->tm_year, 1+timeinfo->tm_mon,
timeinfo->tm_mday,timeinfo->tm_hour,timeinfo->tm_min,timeinfo->tm_sec);
就是直接列印tm,tm_year 從1900年計算,所以要加1900,
月tm_mon,從0計算,所以要加1
其它你一目瞭然啦。
10. 請問在C語言里怎麼獲取當前時間和日期(精確到毫秒)
你試前嫌沖試下面的慧殲程序:
#include
#include
#include
int
main()
{
clock_t
start,
finish;
double
elapsed_time;
start=clock();
//do
sonething
...
finish=clock();
elapsed_time
=
finish-start;
}
我在vc++
6.0下運行,可以得到以毫秒為單者搭位的計時