2009-10-26 54 views
1

我對C仍然很陌生,並試圖學習如何使用strptime來檢查它是否可以用於某個項目的一部分,但我甚至無法得到看起來像是一個非常基本的示例正確的...strptime返回意想不到的結果

int main() 
    { 
    struct tm *t; 
    t = (struct tm *) malloc(sizeof(struct tm)); 

    memset(t, 0, sizeof(t)); 

    if (strptime("12-2009", "%m-%Y", t) != NULL) 
     printf("month: %d year: %d\n",t->tm_mon, t->tm_year); 

    free(t); 
    return 0; 
    } 

運行此程序會: 「月:11年:109

缺少什麼我在這裏?

回答

4

它的Y2K!

將1900年添加到年份。這些月份被索引爲0。

+0

哇...我的手掌的聲音可能會聽到幾英里...感謝您的快速反應 – bcasp