正文
c语言一定要函数原型吗 c语言程序一定由函数构成吗
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
C语言中,为什么要说明函数原型?
函数原型能告诉编译程序一个函数将接受什么样的参数,将返回什么样的返回值,这样编译程序就能检查对函数的调用是否正确,是否存在错误的类型转换。例如,现有以下函数原型;
int
some_func(int,char·,long);
编译程序就会检查所有对该函数的引用(包括该函数的定义)是否使用了三个参数并且返回一个int类型的值。如果编译程序发现函数的调用或定义与函数原型不匹配,编译程序就会报告出错或警告消息。例如,对上述函数原型来说,当编译程序检查以下语句时,就会报告出错或警告消息:
x
=
some_func(l);
/*
not
enough
arguments
passed
*/
x
=
somc_funcC*HELLOl",
1,
"DUDE:");
/*
wrong
type
of
arguments
used
*/
x
=
aome_funcd,
sir,
2879,
"T");
/*
too
many
arguments
passed
*/
下例中的函数调用同样是不正确的,因为函数some_func()的返回值不是一个long*类型的值。
lValue=some_func(1,str,2879);
/*some_rune()returns
anint,not
a
long*
*/
同样,编译程序还能检查函数的定义(或函数体)是否与函数原型匹配。例如,当编译程序检查以下函数定义时,就会报告出错或警告消息:
int
some_func(char
*string,longlValue,int
iValue)
/*
wrong
order
Of
{
parameters
*/
......
}
总之,在源文件中说明函数原型提供了一种检查函数是否被正确引用的机制。目前许多流行的编译程序都会检查被引用的函数的原型是否已在源文件中说明过,如果没有,就会发出警告消息。
C语言中一个函数必须有函数体吗?
不一定要有的。C程序里的输入输出函数没有函数体,是因为调用这些函数的时候,你要有个头文件:#include "stdio.h"声明 std(standard标准) i (input输入) o(output输出) 一起就是标准输出输入。
c语言中函数原型是什么意思,简洁的说下
函数原型就是函数本身定义c语言一定要函数原型吗的形式。
函数的格式为c语言一定要函数原型吗:
return_type func_name(arg_list);
所以函数的原型c语言一定要函数原型吗,就是根据函数名查找到的定义或者声明的形式,通过原型可以确认函数的返回值类型(return_type),以及需要多少个参数,每个参数的类型是什么(arg_list)。
这样才能够确定,如何调用函数才是正确的。
C语言中,函数使用前已定义,也就是函数定义在调用函数语句之前,那这种情况可以不进行函数原型声明吗?
有2中情况:
1,要么是先使用,就不需要再定义函数了
例如:
void
p()
{
//
}
void
main()
{
p();
}
....
2,先定义再使用,这时候,必须先要定义函数,不然编译器不识别此函数的
void
p();
void
mian()
{
p();
}
void
p()
{
//
}
//
希望可以帮到你
c语言函数定义的首部需要和函数原型一样吗
是需要一样的,但c++中的函数重载可以有些不一样但还是要有一定规则的
C语言为什么要对所用到的函数进行原型说明?说明一个函数的原型应包括哪几方面的内容?
C++/C是强类型的语言,这是为了告诉编译器这个函数的存在,如果函数定义在使用之后,那么在使用之前必须对函数原型进行说明,以进行函数参数的检查.
原型说明的格式为:
返回类型 函数名(参数1类型, 参数2类型,...)
其中参数说明只需要说明其类型,不用写形参名称也是可以的.
c语言一定要函数原型吗的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于c语言程序一定由函数构成吗、c语言一定要函数原型吗的信息别忘了在本站进行查找喔。