const char* time = __TIME__ " "__DATE__ ;
则time 值为该源文件最近一次编译的时间和日期,如18:10:14 Mar 16 2011
如果去掉中间的空格字符 __TIME__ __DATE__ 则为18:10:14Mar 16 2011
一个简单易用的时间显示,今天看到,记录一下
示例代码:打印程序编译时间
const char *months[] = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; void getdate(char* pDest,uint8_t size) { char temp [] = __DATE__; unsigned char i; unsigned char month, day, year; year = atoi(temp + 9); *(temp + 6) = 0; day = atoi(temp + 4); *(temp + 3) = 0; for (i = 0; i < 12; i++) { if (!strcmp(temp, months[i])) { month = i + 1; break; } } *pDest++ = (year%100)/10+0x30; *pDest++ = year%10+0x30; *pDest++ = (month%100)/10+0x30; *pDest++ = month%10+0x30; *pDest++ = (day%100)/10+0x30; *pDest++ = day%10+0x30; *pDest++ = '_'; memcpy(pDest,__TIME__,strlen(__TIME__)); }