Użycie nazwy funkcji bez () daje żadnego kodu
Gdy nazwa funkcji zadeklarowanych w programie jest używana bez nawiasów, kompilator nie wytwarzają kodu.Dzieje się tak niezależnie od tego, czy funkcja pobiera parametry, ponieważ kompilator oblicza adres funkcji; Jednakże ponieważ nie występuje operator wywołanie funkcji "()", nie wywołanie.Wynik ten jest podobny do następującego:
// compile with /Wall to generate a warning
int a;
a; // no code generated here either
W programie Visual C++ nawet przy użyciu poziomu ostrzeżeń 4 generuje nie diagnostycznych.Ostrzeżenie nie zostało wydane; żaden kod nie jest produkowany.
Poniższy przykładowy kod kompiluje (z ostrzeżeniem) i łączy poprawnie bez błędów, ale daje żadnego kodu w odniesieniu do funcn( ).Aby to działało poprawnie należy dodać operator wywołanie funkcji "()".
#include <stdio.h>
void funcn();
int main() {
funcn; /* missing function call operator;
call will fail. Use funcn() */
}
void funcn() {
printf("\nHello World\n");
}