Рубрики

Дополнительные скобки с именами функций в C / C ++

Рассмотрим ниже программу C. Программа имеет дополнительную скобку вокруг имени функции.

// Программа на C, чтобы показать, что дополнительные скобки с функцией
// название работы
#include <stdio.h>

  

void (foo)(int n)

{

   printf("Function : %d ", n);

}

  

int main()

{

   (foo)(4);

   return 0;  

}

Выход:

Function 4

Таким образом, добавление дополнительной скобки с именем функции работает в C / C ++.

Какая от этого польза?
Одним из вариантов использования может быть, если у нас есть макрос с тем же именем, что и у функции, то дополнительные скобки избегают раскрытия макроса везде, где мы хотим, чтобы функция вызывалась.

// Программа на C, чтобы показать, что дополнительные скобки с функцией
// имя может быть полезно, если у нас есть макрос с тем же именем
#include <stdio.h>
#define foo(n)  printf("\nMacro : %d ", n);

  

void (foo)(int n)

{

   printf("Function : %d ", n);

}

  

int main()

{

   (foo)(4);

   foo(4);

   return 0;

}

Выход:

Function 4
Macro : 4

Если вам нравится GeeksforGeeks и вы хотите внести свой вклад, вы также можете написать статью и отправить ее по почте на contrib@geeksforgeeks.org. Смотрите свою статью, появляющуюся на главной странице GeeksforGeeks, и помогите другим вундеркиндам.

Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по обсуждаемой теме

Рекомендуемые посты:

Дополнительные скобки с именами функций в C / C ++

0.00 (0%) 0 votes