wangchao.net.cn
| 導購 | 订阅该频道 | 在线投稿
分享到:
 
 
當前位置: 王朝網路 >> 知道 >> 時間加減 C語言

時間加減 C語言

字體: ||
本文來源: 互聯網
分類: 電腦/網絡 >> 程序設計 >> 其他編程語言
問題描述:
  C語言 時間存儲格式爲壓縮BCD碼 7字節 CCYYMMDDHHMMSS 各位的進位制不同 算起來太麻煩了 有沒有比較巧妙的算法
參考答案:
  在VC中我是這樣弄的:

  SYSTEMTIME time;

  ::GetSystemTime(&time);\\取當前時間,time爲一個臨時的變量

  CTime now=time;\\將當前時間存到CTime變量中

  \\輸入要進行對比的時間存入time中,比如下面(對比時間是2006年8月20日):

  time.wYear=2006;

  time.wMonth=8;

  time.wDay=20;

  CTime cmptime=time;\\將要對比的時間放到另一個CTime變量中

  CTimeSpan overtime=now-cmptime;\\比較時,兩時間直接作差,保存在CTimeSpan變量中,這個值有正負,overtime雖然是CTimeSpan類型的,但是用法和CTime一樣

  int overdays=overtime.GetDays();\\取天數差距,本例中就爲9(今天是8月29日),如果剛才now-cmptime換成cmptime-now,現在的值就是-9

  int overdays=overtime.GetMonths();同上,取月差距,其他方法一樣,年,分,秒都能比較

  自己回去試一試吧,應該有滿意的效果!

  我也是琢磨了很長時間才弄出來,個人覺得算是比較方便的方法了,正如你所說,時間的計算比較複雜,容易出錯,不如讓提供好的MFC類對時間進行處理,省去不必要的麻煩!
 
熱門點閱
 
 
 
標籤: 加減時間語言
[b]分类:[/b] 电脑/网络 >> 程序设计 >> 其他编程语言[br][b]问题描述:[/b][br]C語言 時間存儲格式爲壓縮BCD碼 7字節 CCYYMMDDHHMMSS 各位的進位制不同 算起來太麻煩了 有沒有比較巧妙的算法[br][b]参考答案:[/b][br]在VC中我是這樣弄的: SYSTEMTIME time; ::GetSystemTime(&time);\\取當前時間,time爲一個臨時的變量 CTime now=time;\\將當前時間存到CTime變量中 \\輸入要進行對比的時間存入time中,比如下面(對比時間是2006年8月20日): time.wYear=2006; time.wMonth=8; time.wDay=20; CTime cmptime=time;\\將要對比的時間放到另一個CTime變量中 CTimeSpan overtime=now-cmptime;\\比較時,兩時間直接作差,保存在CTimeSpan變量中,這個值有正負,overtime雖然是CTimeSpan類型的,但是用法和CTime一樣 int overdays=overtime.GetDays();\\取天數差距,本例中就爲9(今天是8月29日),如果剛才now-cmptime換成cmptime-now,現在的值就是-9 int overdays=overtime.GetMonths();同上,取月差距,其他方法一樣,年,分,秒都能比較 自己回去試一試吧,應該有滿意的效果! 我也是琢磨了很長時間才弄出來,個人覺得算是比較方便的方法了,正如你所說,時間的計算比較複雜,容易出錯,不如讓提供好的MFC類對時間進行處理,省去不必要的麻煩!
󰈣󰈤
 
  免責聲明:本文僅代表作者個人觀點,與王朝網路無關。王朝網路登載此文出於傳遞更多信息之目的,並不意味著贊同其觀點或證實其描述,其原創性以及文中陳述文字和內容未經本站證實,對本文以及其中全部或者部分內容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,並請自行核實相關內容。
 
 
 
王朝美圖
清純迷人的新模(6)
清純迷人的新模(5)
清純迷人的新模(4)
清純迷人的新模(3)
清真大寺景區介紹
清王陵景區介紹
寶成奇石園景區介紹
玉龍滑雪場景區介紹
 
2009-04-05 15:12:15  简体版  手機版  編輯
 轉載本文
 UBB代碼 HTML代碼
複製到剪貼板...
 
 
 
 
 
 
 
 
 
 
© 2005- 王朝網路 版權所有