VS2008 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int

#include "stdafx.h"
#include <stdio.h>
#include <pcap.h>

main()
{
pcap_if_t *alldevs;
pcap_if_t *d;
int i=0;
char errbuf[PCAP_ERRBUF_SIZE];

/* 这个API用来获得网卡 的列表 */
if (pcap_findalldevs(&alldevs, errbuf) == -1)
{
fprintf(stderr,"Error in pcap_findalldevs: %s\n", errbuf);
exit(1);
}

/* 显示列表的响应字段的内容 */
for(d=alldevs;d;d=d->next)
{
printf("%d. %s", ++i, d->name);
if (d->description)
printf(" (%s)\n", d->description);
else printf(" (No description available)\n");
}

if(i==0)
{
printf("\nNo interfaces found! Make sure WinPcap is installed.\n");
return;
}

/* We don't need any more the device list. Free it */
pcap_freealldevs(alldevs);

}
1>正在编译...
1>stdafx.cpp
1>d:\documents\visual studio 2008\projects\winpcap01\winpcap01\stdafx.cpp(10) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>生成日志保存在“file://d:\Documents\Visual Studio 2008\Projects\winpcap01\winpcap01\Debug\BuildLog.htm”
1>winpcap01 - 1 个错误,0 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
是什么原因啊

标准C++的main需要返回值 所以在main前要加int
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-03-15
呵呵,换成我的格式试试看:
#include "stdafx.h"
#include <stdio.h> //加了using namespace std;就可以不要此句
#include <pcap.h>

int main()
{
/*...*/
return 0;
}

VS2008 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持...
标准C++的main需要返回值 所以在main前要加int

error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 in...
二十年前这种写法就是不推荐使用的,正确的写法是 include <stdio.h> int main(){ printf("Hello,World!\\n");return 0;} 中国的教材落后于时代的很多,这种书建议少看为好,不仅是错误很多,更重要的是一些看上去没问题但实际上是极坏的风格,在应用中会让人多遇到很多苦头……

...提示:error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支...
void main()改一下。因为VC2008执行C99标准。你必须指定返回类型。

VS2008MFC编程中 error C4430: 缺少类型说明符 - 假定为 int。注意...
貌似都没有先声明,所以才提示类型问题

...1 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持...
sum(int n,int k)这个函数没有返回的数据类型,vc6.0默认为int,vc2008对语法检查更严谨,所以不通过。

error C2146: 语法错误 : 缺少";"(在标识符"m_ingBorder"的前面)_百...
可能是没有引用关于CImag的头文件

...回事:缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int...
意思就是,首先,你现在用的是C++,所以不支持假定(默认)为int 其次⋯⋯你肯定有地方忘记写类型了,比如说函数返回值要有类型,要么void,变量定义,要有类型

库函数报错:error C4430: 缺少类型说明符 - 假定为 int。注意: C++...
从第一个开始看,解决第一个错后再看第二个,一定要记住这点;因为编译器发现你第一个错误后,可能会导致他后面的语法无法判断。很可能你解决了第一个错(比如类定义后面没写分号),然后重新编译,后面的错都消失了;如果你这个编译错误时第一个错,则可能因为你没包含他需要的头文件;...

缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
主函数要明确说明有返回值或者无返回值void 看你的代码,最后return 0;那就是返回整数的,你可以写int main(),最后代码里不写返回代码,但你不能在函数里有返回代码,但函数头无返回类型,所以你的函数头应该是 int main()

缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1、main.cpp。2、再来看Test1的Test1.h。3、Test1.cpp。4、Test2.h。5、Test2.cpp。6、然后运行就报上面的一对错误了...仔细看看发现两个头文件都彼此包含了,就是这个问题...那怎么解决了,上传代码,直接看这样更容易理解 main.cpp不变Test1.h。7、Test1.cpp。8、Tes2一样的道理,...

相似回答