函数调用运算符

第一个操作数必须是函数指针(函数指示符也可以接受,因为它将转换为指向函数的指针),标识要调用的函数,所有其他操作数(如果有的话)统称为函数调用的参数。计算使用相应参数调用适当函数所产生的返回值。

int myFunction(int x, int y)
{
    return x * 2 + y;
}

int (*fn)(int, int) = &myFunction;
int x = 42;
int y = 123;

printf("(*fn)(%i, %i) = %i\n", x, y, (*fn)(x, y)); /* Outputs "fn(42, 123) = 207". */
printf("fn(%i, %i) = %i\n", x, y, fn(x, y)); /* Another form: you don't need to dereference explicitly */