Безымянный аргумент функции - C (СИ)
Формулировка задачи:
Возможно ли в Си создать функцию с безымянным аргументом? На void test(int){} компилятор ругается "error: parameter name omitted". На void test(int x){} опять ругается - "warning: unused parameter 'x'". А вовсе удалить параметр нельзя - сигнатура функции с сигнатурой callback не сойдется.
Решение задачи: «Безымянный аргумент функции»
textual
Листинг программы
void test(int a)
{
(void)a;
printf("%d\n", 200);
}
Объяснение кода листинга программы
- В данном коде присутствует функция с именем
test, которая принимает один целочисленный аргументa. - В функции происходит игнорирование аргумента
aс помощью оператораvoid. - Затем происходит вывод на экран числа 200 с помощью функции
printf. - Выводимое число 200 заключено в кавычки, чтобы оно было распознано как строка.
- Вывод числа 200 осуществляется без кавычек, чтобы оно было выведено как число, а не как строка.
- В данном коде нет использования переменных, поэтому список можно завершить.