C语言问题,关于日期倒计时(附说明,谢谢)

Python020

C语言问题,关于日期倒计时(附说明,谢谢),第1张

/**

程序说明:很遗憾地告诉你,strptime()这个函数在Windows平台上是没有的,以下是在Linux系统编译运行的结果。

2017 05 04

今天: 2017 03 29

倒计时:离大赛还有36天

*/

#include <stdio.h>

#include <time.h>

int main()

{

int year,month,day

time_t now

char buf[64]

struct tm *today

struct tm future

int countdown

scanf("%d%d%d",&year,&month,&day)

sprintf(buf,"%d-%d-%d",year,month,day)

strptime(buf,"%Y-%m-%d",&future)

now=time(NULL)

today=localtime(&now)

countdown=future.tm_yday-today->tm_yday

sprintf(buf,"%4d %02d %02d",today->tm_year + 1900, today->tm_mon + 1, today->tm_mday)

printf("今天: %s\n",buf)

printf("倒计时:离大赛还有%d天\n",countdown)

return 0

}

1、C语言中实现精确计时,参考代码如下:

ANSIC: ftime()

struct timeb {

time_t time

unsigned short millitm

short timezone

short dstflag

}

2、另外,还有就是更精确定计时,需要CPU的支持,具体情况,可以参考MSDN。

LARGE_INTEGER frequency = {0}

LARGE_INTEGER now = {0}

LARGE_INTEGER end = {0}

QueryPerformanceFrequency(&frequency);

while (QueryPerformanceCounter(&now) &&((now.QuadPart - end.QuadPart) <0))

{

Sleep(0)

}