我們正試圖在centos 6.2平臺上通過C語言發送幾封電子郵件。以下是代碼。錯誤是警告:內置函數sprintf
的不兼容隱式聲明。Sprintf錯誤通過c on centos發送電子郵件6.2
如何解決這個問題?
#include <stdlib.h>
#include <string.h>
#define cknull(x) if((x)==NULL) {perror(""); exit(EXIT_FAILURE);}
#define cknltz(x) if((x)<0) {perror(""); exit(EXIT_FAILURE);}
#define LIST_LEN 4
void main()
{
char tmp[256]={0x0};
char fpBuffer[512]={0x0};
char email_list[LIST_LEN][256]={ {"****@gmail.com"},
{"****@gmail.com"},
{"***@gmail.com"},
{0x0}};
int i=0;
char *filename = "";
for(i=0;*email_list[i]>0x0;i++)
{
cknull(strcpy(tmp, email_list[i]));
cknltz(sprintf (fpBuffer,
"/usr/bin/mailx -s '%s %s' %s < %s",
"Please Review:",
filename,
tmp,
filename));
if(system (fpBuffer)==(-1))
{
perror("email failure");
exit(EXIT_FAILURE);
}
}
}
它是'int main()'。 – alk
'int main(void)'在C99中。 –
@MikeKwan:更好,thx! – alk