「2010-08-12」と「2010-8-12」の2つの日付を比較したいのですが、strcmpを使用すると失敗するため、これらの日付を比較するために、組み込みのC関数またはC関数を提案してください。
よろしく
「2010-08-12」と「2010-8-12」の2つの日付を比較したいのですが、strcmpを使用すると失敗するため、これらの日付を比較するために、組み込みのC関数またはC関数を提案してください。
よろしく
strptimeを試して、適合するかどうかを確認することをお勧めします。
を使用して、日付を注文目的に十分な数値に変換する単純で簡単な関数を作成できますstrtol
。
int seq_day(char *date) {
int y = strtol(date, &date, 10);
int m = strtol(++date, &date, 10);
int d = strtol(++date, &date, 10);
return (y*12+m)*31+d;
}
両方の日付で上記の関数を呼び出し、int
結果を比較します。返される値は、日付が早いほど小さくなります。