出现此类原因其实很简单,就是没有把stdlib.h包含进来,加上就没问题了。
以此类推,编译后出现警告:隐式声明与内建函数’XXX’不兼容的问题所在都是因为没有包含相应的头文件,加上就OK!
#include<unistd.h>
#include<signal.h>
#include<sys/param.h>
#include<sys/types.h>
#include<sys/stat.h>
void init_daemon(void)
{
int pid;
int i;
if(pid==fork())
{
exit(0);
}
else if(pid<0)
{
exit(1);
}
setsid();
if(pid==fork())
{
exit(0);
}
else if(pid<0)
{
exit(1);
}
for(i=0;i<NOFILE;i++)
{
close(i);
}
chdir("/tmp");
umask(0);
return;
}#include<stdio.h>
#include<time.h>
void init_deamon(void);
main()
{
FILE *fp;
time_t t;
init_daemon();
while(1)
{
sleep(60);
if((fp=fopen("test.log","a"))>=0)
{
t=time(0);
fprintf(fp,"I am here at %s\n",asctime(localtime(&1)));
fclose(fp);
}
}
}
本文探讨了在C++编程中遇到的常见问题——编译后出现警告:隐式声明与内建函数不兼容。主要原因是未包含相应的头文件。通过实例演示了如何解决这类问题,并提供了有效的代码解决方案。

5303

被折叠的 条评论
为什么被折叠?



