一个关于计算出日期差距的函数

来源:互联网 发布:kmp算法next数组的含义 编辑:程序博客网 时间:2024/06/05 00:42
<pre name="code" class="cpp">//参数nYear,nMonth,nDay 表示当天日期,nBeforeToday 表示几天前
void transferToActualDay( int &nYear,int &nMonth,int &nDay,int nBeforeToday ){    if (nDay <= nBeforeToday)    {        nBeforeToday -= nDay;        switch(nMonth)        {        case 1:            {                nYear --;                nMonth = 12;                nDay = 31;            }            break;        case 2:            {                nMonth --;                nDay = 31;            }            break;        case 3:            {                nMonth --;                if((nYear%4==0&&nYear%100!=0)||(nYear%400==0))                {                    nDay = 29;                }                else                {                    nDay = 28;                }            }            break;        case 4:        case 6:        case 9:        case 11:            {                nMonth --;                nDay = 31;            }            break;        case 5:        case 7:        case 8:        case 10:        case 12:            {                nMonth --;                nDay = 30;            }            break;        default:            break;        }        transferToActualDay(nYear,nMonth,nDay,nBeforeToday);    }    else    {        nDay -= nBeforeToday;    }}



0 0
原创粉丝点击