在 Python 中,我已经习惯了
def send_command(command, modifier = None):
然后修饰符参数是可选的,可以将参数的缺失与0的参数区分开来。C中是否有类似的功能?我对 C 和谷歌搜索缺乏经验,但找不到关于如何在 C 中使用可选参数的明确说明。似乎您可以类似地分配它们,如下所示:
void send_command(uint8_t command, uint8_t modifier = 0) {
所以第二个参数是可选的,如果不使用则默认为 0? (编辑:不,这无论如何都是无效的C)
但是函数可以区分send_command(SOMETHING)
和send_command(SOMETHING, 0)
吗?理想情况下,第二个参数可以是任何 uint8 值,包括 0。
也许 NULL 与 0 不同?
void send_command(uint8_t command, uint8_t modifier = NULL) {