Что это за использование переменной приведенной к void в теле функции?
Я только учусь кодировать встроенный C. Я вижу некоторый код, как показано ниже.
Функция определяется следующим образом:
void printDebug(const char d1[]){(void)d1;}
И это используется так:
printDebug("BLE_UART_EVENT");
Я не понимаю его цели. Это дает мне впечатление вызываемого char
массив?
1 ответ
Решение
Это не звонит char
массив, это просто явное преобразование char
массив для void
, (И оцененный результат сразу отбрасывается.)
Я думаю, что это просто используется, чтобы запретить предупреждение компилятора о неиспользуемых переменных.
Если параметр не будет использоваться вообще, было бы понятнее сделать его неназванным параметром.
void printDebug(const char[]) {}