标题: [原创]分享一个最简单判断日期合法性的C语言函数 [打印本页]

作者: 伟宁咔咔    时间: 2019-7-19 08:57
标题: [原创]分享一个最简单判断日期合法性的C语言函数
最近整理了一个判断日期合法性的函数,比较简洁,供大家参考,欢迎批评指正。
  1. char Cheack_date(short w_year,char w_month,char w_date)
  2. {
  3.     unsigned char Month_buf[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };

  4.     if (w_month==2)
  5.         (((w_year%4==0)&&(w_year%100!=0))||(w_year%400==0))?Month_buf[1]+=1:Month_buf[1];

  6.     if (w_month>12||w_month<1||w_date>Month_buf[w_month-1]||w_date<1)
  7.         return 0;

  8.     return 1;
  9. }
复制代码

下面是一个小测试;
  1. 2000-2-29
  2. 该日期合法!
  3. 1900-2-29
  4. 该日期非法!
  5. 2019-6-15
  6. 该日期合法!
  7. 2019-13-15
  8. 该日期非法!
  9. 2019-6-0
  10. 该日期非法!
  11. 2019-0-5
  12. 该日期非法!
  13. 2019-6-31
  14. 该日期非法!
  15. 2019-7-31
  16. 该日期合法!
复制代码








欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1