在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) {