C语言中定义函数时,什么时候必须定义形参,什么时候可以省略,求指点~谢谢啦
函数声明时只需写出形参类型。
成都网站制作公司哪家好,找创新互联建站!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设等网站项目制作,到程序开发,运营维护。创新互联建站于2013年创立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联建站。
函数定义时必须写出形参类型和变量名。
C语言中的标准函数printf便使用这种机制。在声明不确定形参的函数时,形参部分可以使用省略号“…”代替。“…”告诉编译器,在函数调用时不检查形参类型是否与实参类型相同,也不检查参数个数。
扩展资料
示例
例如:
void ConnectData(int i,...)
在上面的代码中,编译器只检查第一个参数是否为整型,而不对其他参数进行检查。
对于可变参数的函数,需要进行特殊的处理。首先需要引用 stdarg.h 头文件,然后利用va_list类型和va_start、va_arg、va_end 3个宏读取传递到函数中的参数值。
这几个宏的定义如下(在 ANSI C 中):
type va_arg( va_list arg_ptr, type );
void va_end( va_list arg_ptr );
void va_start( va_list arg_ptr, prev_param )。
c语言中函数声明的时候可以省略形参吗?
形参名可以省,形参的类型不要省;如int fact(int);以便编译器识别形参和实参的类型是否匹配。
c语言函数可以没有参数吗
好问题。
c语言中的函数和数学中的函数不一样。
没有参数的函数,有些用了全局变量,所以还是有参数的,意义就在于分解代码,做成一个函数都要取个名字,从函数就可以知道一段代码的主要功能了。
谁能详细解释一下C语言函数中的无参、有参、形参、实参,要简单易懂!谢谢!
在C语言中,函数的无参用关键字用void表示,如果一个函数的参数为void,当我们调用此函数并给它传递一个参数时,编译器会给出错误的警告,因为你把参数传递给了一个不接受参数的函数。 例: int func(void) { ... } int main(void) { func(5) ; /*It will cause an error .*/ ... return 0 ; } 这里注意一点,在C语言中(而不是C++中),如果函数的参数什么也没有,如int func(),那么此时你调用这个函数的时候放不放参数编译器都不会给出警告,编译器会认为它是可有可无的,但这不是一个好方法,如果函数不需要任何参数,那一定要显式的把void加到参数列表里。 参数是什么呢,比如f(x) = 5x + 3 ;这里的x就是参数(可理解为做为参照的数),是形参,f(5)会得出一个值,f(10)又会得出一个值(显然这是个双射函数,呵呵),那么这里的5 , 10都是实参(实际传递的参数),实参会替换形参的位置。 如: int func(int a , int b) { return a + b ; } 其中a , b是形参,调用时 func(5,6) ; 那5 , 6就是实参,函数得到实参后会替换原来形参的位置,相当于将5和6相加并返回结果。
c语言在main函数外部自定义函数时,括号里的形参表可以省略吗?为什么?
那要看你调用的时候有没有实参!如果有实参必须要形参
如果没实参就一定不要形参!就像你去借东西一样!如果他借给你你一定能拿到!如果他不给你一定拿不到!
再看看别人怎么说的。
c语言中,有些函数没有形参,怎么使用,主函数除外。急!!!
直接通过函数名+括号调用啊,形参只是你希望给这个函数传递值,很多函数都可以没有形参
当前标题:c语言函数可以没有形参吗 c函数可以没有参数吗
当前路径:http://scgulin.cn/article/doocjhp.html