C语言 无法解析的外部符号

LIBCMT.lib(crt0.obj) : error LNK2019: 无法解析的外部符号 _main,该符号在函数 ___
tmainCRTStartup 中被引用
nqueen.exe : fatal error LNK1120: 1 个无法解析的外部命令

-------------------------------------------------------------
这是什么错误啊
------------------
#include<stdio.h>
#include<math.h>

int checkit(int l[],int m)
{
int blloen=1;
int i;
for(i=1;i<=m;i++)
{
if(l[i]==l[m]&&(abs(l[m]-l[i])==abs(m-i)))
blloen=0;
else
blloen=1;

}
return blloen;
}
void putoutit(int a[],int p)
{
int i;
for(i=0;i<=p;i++)
printf("%d\n",a[i]);

}
main()
{
/*int checkit(int l[],int m);
void putoutit(int a[],int p);*/
int n=4;

/*scanf("%d",&n);*/
int k=1;
int x[4]={0};
while(k>0)
{
x[k]=x[k]+1;
while(x[k]<=n&&(!checkit(x,k)))
x[k]=x[k]+1;
if(x[k]<=n)
{
if(k==n)
putoutit(x,n);
else
k=k+1;
}
else
{
x[k]=0;
k=k-1;
}
}
getchar();

}

我倒是找到错误了,不知道对不对。

你把putoutit函数的}后面的字符全都删了,就行了,大概遇到非法字符停止编译,所以main函数没有被编译,自然就没有_main符号导出了。

我用vc7调试的
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-06-04
在main()前加个void试试,写成void main()
第2个回答  2008-06-05
把你的Debug文件夹删除,重新编译,应该没有问题。
相似回答