各位大侠碰到过这个问题吗?

解决方案 »

  1.   

    试试SYSTEMTIME 或者 CTime
      

  2.   

    vbscript提供了这个功能,VC没有提供。不行就自己循环计算,反正循环量又不大
      

  3.   

    提一种思路,供参考。先定义一个SYSTEMTIME, 初始化为2008-1-1。
    SystemTimeToFileTime转成FILETIME(64位整数)。(再转回来就知道是星期二了)。
    FILETIME加上第四个星期二与第一个星期二相差的时间。
    (ULONGLONG)10000000*60*60*24*((4-1)*7+(2-1)-(2-1))
    最后再转回SYSTEMTIME。就是2008-1-22了。
      

  4.   

    CTimeSpan(天,小时,分,秒)
    4个星期吧,可以这么 4*7 =28 天  星期2 就+2 就= 30 CTime time2(2008,1,1,0,0,1);
    CTimeSpan timeSpan(30,0,0,0);
    time2= time2 +timeSpan; 
    CString s;
    s.Format("%d  %d  %d",time2.GetYear(),time2.GetMonth(),time2.GetDay());
    MessageBox(s);