Hi
Where function are stored in memory?
In the following example , where function pointer fp stored ?
Code:#include <math.h> #include <stdio.h> // Function taking a function pointer as an argument double compute_sum(double (*funcp)(double), double lo, double hi) {double sum = 0.0; // Add values returned by the pointed-to function '*funcp' for (int i = 0; i <= 100; i++){double x, y; // Use the function pointer 'funcp' to invoke the function x = i/100.0 * (hi - lo) + lo; y = (*funcp)(x); sum += y;}return sum;} int main(void) {double (*fp)(double); // Function pointer double sum; // Use 'sin()' as the pointed-to function fp = &sin; sum = compute_sum(fp, 0.0, 1.0); printf("sum(sin): %f\n", sum); // Use 'cos()' as the pointed-to function sum = compute_sum(&cos, 0.0, 1.0); printf("sum(cos): %f\n", sum); return 0;}



LinkBack URL
About LinkBacks


