如果我们不使用某些函数原型,并且函数主体在该函数的调用语句之后的某个部分中声明。在这种情况下,编译器认为默认返回类型是整数。但是,如果函数返回其他某种类型的值,则会返回错误。如果返回类型也是整数,则它将正常工作,有时这可能会生成一些警告。
#include<stdio.h> main() { printf("The returned value: %d\n", function); } char function() { return 'T'; //return T as character }
输出结果
[Error] conflicting types for 'function' [Note] previous implicit declaration of 'function' was here
现在,如果返回类型是整数,则它将起作用。
#include<stdio.h> main() { printf("The returned value: %d\n", function()); } int function() { return 86; //return an integer value }
输出结果
The returned value: 86