【发布时间】:2012-12-27 12:45:51
【问题描述】:
能否请您修复此代码中的错误我收到此错误error C2040: 'tmFunc' : 'char *()' 与'int ()' 的间接级别不同
#include<stdio.h>
main()
{
char *tmStamp=tmFunc();
}
char *tmFunc()
{
char tmbuf[30];
struct tm *tm;
time_t ltime; /* calendar time */
ltime=time(NULL); /* get current cal time */
tm = localtime(<ime);
sprintf (tmbuf, "[%04d/%02d/%02d %02d:%02d:%02d]", tm->tm_year + 1900,
tm->tm_mon + 1, tm->tm_mday, tm->tm_hour, tm->tm_min, tm->tm_sec);
return(tmbuf);
}
【问题讨论】:
-
请同时使用真正的主函数
int main(void),并正确缩进代码。 -
您可能还想考虑在您的
tmFunc()函数中返回本地字符缓冲区的地址,除非是静态的,否则(它不是)是未定义的行为。跨度>