第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

c/c++ 兩個(gè)時(shí)間大小比較

c/c++ 兩個(gè)時(shí)間大小比較

C++
尚方寶劍之說 2019-03-03 04:04:33
//【函數(shù)功能】:對(duì)比兩個(gè)時(shí)間點(diǎn)的大小,時(shí)間格式形如("2015-08-06 09:32:60")//【返回 值】:str1比str2大返回1,str1比str2小返回0,相等返回2,錯(cuò)誤返回-1
查看完整描述

2 回答

?
MMTTMM

TA貢獻(xiàn)1869條經(jīng)驗(yàn) 獲得超4個(gè)贊

兩個(gè)時(shí)間大小的比較方法描述如下:

  首先解析字符串,獲取年月日時(shí)分秒各項(xiàng)數(shù)值。然后按照先比較年月日,再比較時(shí)分秒的辦法進(jìn)行比較。如果大于則返回1,如果小于返回0,如果等于返回2。

       這里面需要利用到兩個(gè)知識(shí)點(diǎn):

  1. 比較年月日,可以先將年月日整合為一個(gè)整數(shù),然后比較整數(shù)即可比較出年月日的大小

  2. sscanf可以將字符串中的數(shù)值提取出來

  代碼實(shí)現(xiàn)如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

int compare(const char* time1,const char* time2)

{

    int year1,month1,day1,hour1,min1,sec1;

    int year2,month2,day2,hour2,min2,sec2;

    sscanf(time1,"%d-%d-%d %d:%d:%d",&year1,&month1,&day1,&hour1,&min1,&sec1);

    sscanf(time2,"%d-%d-%d %d:%d:%d",&year2,&month2,&day2,&hour2,&min2,&sec2);

    int tm1 = year1*10000+month1*100+day1;

    int tm2 = year2*10000+month2*100+day2;

    if(tm1!=tm2) return (tm1>tm2)?1:0;//如果相等,大返回1,小返回0

    tm1 = hour1*3600+min1*60+sec1;

    tm2 = hour2*3600+min2*60+sec2;//將時(shí)分秒轉(zhuǎn)換為秒數(shù)

    if(tm1!=tm2) return (tm1>tm2)?1:0;//如果相等,大返回1,小返回0

    return 2;//到這里必然是相等了

}


 

 




查看完整回答
反對(duì) 回復(fù) 2019-03-11
?
縹緲止盈

TA貢獻(xiàn)2041條經(jīng)驗(yàn) 獲得超4個(gè)贊

有這么復(fù)雜么 char str1[30] = "2015-08-06 09:32:60";
char str2[30] = "2015-04-06 09:32:59";這個(gè)時(shí)間 是控件獲取的還是手動(dòng)輸入的?

如果是控件獲取的 一般是Ctime類型的,直接可以比較大??;如果手動(dòng)輸入的 可以轉(zhuǎn)成Ctime類 然后再直接比較大小,再輸入的時(shí)候 控制一下就可以了;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

CTime timestr(LPSTR str)

{

 USES_CONVERSION;

 LPSTR strSQL=str;

 int nYear, nMonth, nDate, nHour, nMin, nSec;

 nYear=nMonth=nDate=nHour=nMin=nSec=0;

 sscanf(strSQL, "%d-%d-%d  %d:%d:%d", &nYear, &nMonth, &nDate, &nHour, &nMin, &nSec);    

 CTime t(nYear, nMonth, nDate, nHour, nMin, nSec);     

 return t;

}

然后調(diào)用這個(gè) CTime t1=timestr("2015-08-06 09:32:60");

CTime t2=timestr("2015-04-06 09:32:59"); 

int i=0; 

if(t1>t2)

{

      i=1;

}  

else if(t2>t1)

{

      i=0;

}

else

{i=-1;}


 




查看完整回答
反對(duì) 回復(fù) 2019-03-11
  • 2 回答
  • 0 關(guān)注
  • 1374 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)