C语言中定义函数时,什么时候必须定义形参,什么时候可以省略,求指点~谢谢啦

 我来答
小星星教育知识分享
高粉答主

2020-06-28 · 用教师的智慧点燃学生的智慧火花
小星星教育知识分享
采纳数:202 获赞数:67132

向TA提问 私信TA
展开全部

函数声明时只需写出形参类型。

函数定义时必须写出形参类型和变量名。

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 )。

TableDI
2024-07-18 广告
Excel一键自动匹配,在线免费vlookup工具,3步完成!Excel在线免费vlookup工具,点击4步自动完成vlookup匹配,无需手写公式,免费使用!... 点击进入详情页
本回答由TableDI提供
匿名用户
2012-06-07
展开全部
例如,
int add(int a,int b)
{
sum=a/b;
return sum;
}
函数中出现形参的传递,实现中用到a,b,且a,b的使用有特定顺序,位置就不能省略。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
feifan3333
2012-06-07
知道答主
回答量:22
采纳率:0%
帮助的人:18.4万
展开全部
看你函数地功能需不需要参数。
比如这就不要参数:
void print()
{
printf("test");
}
main()
{
print();
}
结果:test
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友26ad406
2012-06-07 · TA获得超过1611个赞
知道大有可为答主
回答量:1506
采纳率:100%
帮助的人:1063万
展开全部
函数声明时只需写出形参类型
函数定义时必须写出形参类型和变量名
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式