首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

是否可免声明解决方法

2012-03-23 
是否可免声明#includeiostream#includeiomanip#includectime#includecstdlibusing namespace std

是否可免声明
#include<iostream>
#include<iomanip>
#include<ctime>
#include<cstdlib>
using namespace std;
int max(int a,int b);/*教程中有这一句,但自己用DEV编译没它也毫无影响,请问为什么?是有哪些函数可以免声明吗?没度娘出来结果*/
int main()
{
  int a,b,c;
  cin>>a>>b;
  c=max(a,b);
  cout<<c<<endl;
  system("pause");
  return 0;
}
   


[解决办法]
如果你的那个max函数在调用它的那个函数之前定义的话,就可以免声明
[解决办法]
那是因为在你前面include的某个头文件中,已经有int max(int a,int b);这个函数的声明了。
[解决办法]
int max(int a,int b); 库里没这样定义的max
要出错
[解决办法]
c语言不强制函数声明,当出现函数调用时就认为是函数声明并且返回值是int

现在的编译器是可以的,比较早期的编译器要求函数必须已经被声明过了,处理不了后向声明。


这种特性应该属于编译器自己的实现,并不是标准的特性。

总之:
int 类型的函数默认是不需要声明的,写在主函数前的函数默认是不需要声明的。
但是:为了安全起见,函数最好都要声明。
[解决办法]
max好像是宏

热点排行