C语言中,函数使用前已定义,也就是函数定义在调用函数语句之前,那这种情况可以不进行函数原型声明吗?
有2中情况:
创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于成都做网站、网站制作、普兰店网络推广、微信小程序、普兰店网络营销、普兰店企业策划、普兰店品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联公司为所有大学生创业者提供普兰店建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com
1,要么是先使用,就不需要再定义函数了
例如:
void
p()
{
//
}
void
main()
{
p();
}
....
2,先定义再使用,这时候,必须先要定义函数,不然编译器不识别此函数的
void
p();
void
mian()
{
p();
}
void
p()
{
//
}
//
希望可以帮到你
c语言 外部函数声明与否问题
当不提供函数原型,而调用处尝不知道返回值类型,此时编译器黙认返回值为整型,而实际返回类型并不是整型,结果没有做正确的数据类型转换,取到的就是错误的数据
你可以在return sum;前打印这个结果,看看计算时是否正确,
同时在循环体中打印出来各个元素值,看看传参数是否正确,如果这两处都还正确则说明只是返回值未正确类型转换。
c语言函数不声明行吗
函数的入口在main(),程序从上至下执行的,如果你的函数在main()之后定义并且没有声明,执行的时候编译器会找不到定义而编译不过。声明就是要让编译器知道函数原型 (检测错误)
总之,如果main()函数在前,必须在main()中写函数声明;如果函数在main()前面,可以不在main()中写函数声明
C语言函数定义在main函数之后,而且在main函数之前没有函数原型声明。为什么不会出错?
//int show_info()
函数原型声明只是一个好习惯,C11标准并没有强制要求必须给出原型声明。
而且声明函数的同时定义函数也是允许的。
C语言把自定义函数放后面,不给函数原型声明,怎么没有报错?!我试了几次,用的codeblocks。
那跟编译器使用的标准有关
C99的编译器不需要再声明函数,而老的C89需要
不过由于支持C99的编译器只有极少数(如dev、gcc等),大多数的C编译器(尤其是嵌入式编译器)仍使用C89标准,因此,如果你希望你的程序有更好的兼容性,还是遵从C89的标准写上函数声明语句吧
另外需要提示一点:如果你定义的函数返回值是int类型,C89也不需要声明就可以使用此函数,这是特殊情况(我估计你遇到的情况应该是这种),不过为了保持程序员的良好习惯,还是写上声明比较好
网站题目:c语言不声明函数原型 函数原型不能说明
文章源于:http://scyingshan.cn/article/docojsj.html