【发布时间】:2015-09-05 08:57:24
【问题描述】:
我有一个接受 3 个参数的函数,但我也希望它只接受前两个而不关心第三个。如何在 C 中执行此操作。我尝试将头文件中的函数声明为 void list()
认为这可能意味着我们不在乎有多少参数,但这不起作用。
void list(uint8_t _pin, unsigned int time, unsigned long tasks)
【问题讨论】:
-
看看
stdarg.h标头。 -
函数如何知道是否要看第三个参数?
-
你能修改函数,它是如何调用的,还是两者都修改?
-
如果只是忽略第三个参数,我会在使用可变参数函数之前三思而后行。而是传递一个虚拟值(
0/NULL通常是个好主意)。但是,您必须考虑 函数如何决定是否忽略第三个参数(注意:C 没有函数参数)。
标签: c function parameter-passing