getDat(char *val)获得某一天是这一年中的第几天
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了getDat(char *val)获得某一天是这一年中的第几天相关的知识,希望对你有一定的参考价值。
获得某一天是这一年中的第几天
如:
./g 20117/2/1
32
#include <time.h>
#include <string.h>
#include <stdio.h>
const char SPLIT1[2]="-";
const char SPLIT2[2]="/";
const char SPLIT3[2]=" ";
int getDay(char * val);
int main(int argc,char *argv[])
{
getDay(argv[1]);
return 0;
}
int getDay(char *val)
{
char *inDate[3];
struct tm setInfo;
time_t tmpInfo;
int i=0;
inDate[i]=strtok(val,SPLIT2);
while(++i<3)
{
inDate[i]=strtok(NULL,SPLIT2);
}
setInfo.tm_year=atoi(inDate[0])-1900;
setInfo.tm_mon=atoi(inDate[1])-1;
setInfo.tm_mday=atoi(inDate[2]);
setInfo.tm_hour=0;
setInfo.tm_min=0;
setInfo.tm_sec=0;
setInfo.tm_isdst=-1;
tmpInfo=mktime(&setInfo);
printf("%d\n",setInfo.tm_yday+1);
return (setInfo.tm_yday+1);
}
以上是关于getDat(char *val)获得某一天是这一年中的第几天的主要内容,如果未能解决你的问题,请参考以下文章