传递可变数量的参数
我们可以将可变数量的参数传递给 c 中的函数吗?
Can we pass variable number of arguments to a function in c?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我们可以将可变数量的参数传递给 c 中的函数吗?
Can we pass variable number of arguments to a function in c?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(5)
这里是一个示例:
Here is an example:
如果它是 接受可变数量的函数论据,是的。
If it is a function that accepts a variable number of arguments, yes.
是的,如果函数接受可变参数。如果您需要创建自己的变量参数函数,可以使用以 va_ 开头的宏来访问参数。
Yes, if the function accepts variable arguments. If you need to make your own variable-argument function, there are macros that begin with va_ which give you access to the arguments.
确保变量参数列表应始终位于参数列表的末尾
示例:
void func(float a, int b, ...)
是正确的,但
void func(float a , ..., int b)
无效make sure that the variable argument list should always be at the end of the argument list
example:
void func(float a, int b, ...)
is correctbut
void func(float a, ..., int b)
is not valid“你应该考虑到使用可变参数函数(C 风格)是一个危险的缺陷,”Stephane Rolland 说。您可以在此处<找到他的有用帖子< /a>.
"You should consider that using variadic functions (C-style) is a dangerous flaw," says Stephane Rolland. You can find his helpful post here.