-5

当我尝试在http://www.exploit-db.com/exploits/16/编译脚本时出现错误。我正在使用 dev-c++,它告诉我这个:

(( C:\...\Untitled1.cpp In function `void send_ping_overflow(SOCKET, DWORD, char*, short int)':
|| 104 C:\...\Untitled1.cpp name lookup of `i' changed for new ISO `for' scoping
|| 100 C:\...\Untitled1.cpp   using obsolete binding at `i'  ))
4

1 回答 1

3

for (int i, ...)

该变量i是在for循环构造中声明的。这实际上是 C 语言中一种新的(相对而言!)能力——最初,变量需要在使用它们的块的顶部声明。

您正在使用的令人难以置信的过时编译器(请参阅dev-c++ 标签 wiki 页面)正在向您发出警告,因为您没有按照 C99 标准或更高版本进行编码。请注意,C99 中的“99”是 1999 年或 13 年前的。你一定是在用大约 21 年前的 C90 写作。

我建议切换到更新/更好的 IDE,例如Eclipse

于 2012-01-28T20:11:24.813 回答