Quantcast
Channel: Comunidad Underground Hispana
Viewing all articles
Browse latest Browse all 11602

Punteros de funciones

$
0
0
Estoy estudiando el concepto de punteros de funciones y para ellos he realizado el siguiente código el cual no se compila porque menciona que no está definido la referencia a operatoria. El código es el siguiente:

Código:

#include <stdio.h>
#include <stdlib.h>

int sumar (int a, int b);
int resta (int a, int b);
int operacion (int (*operatoria) (int a, int b), int a, int b);

int main(int argc, char *argv[])
{
    int a, b, c, choise;
    printf("Ingrese los operandos\n");
    scanf("%d %d", &a, &b);
    printf("Presione 1 si desea adicionar los operandos y 2 si desea diferenciar los operandos\n");
    scanf("%d", &choise);
    if(choise==1)
    {
                c=operatoria (  sumar ,a,b );
                }
    else
    {
        c=operatoria (resta ,a,b);
        }
    printf("Asi que c es: %d\n\n", c);
 
  system("PAUSE");       
  return 0;
}

int sumar (int a, int b)
{
    printf("\nse ejecuto la funcion sumar\n\n"); 
    return (a+b);
}

int resta (int a, int b)
{
    printf("\nse ejecuto la funcion sumar\n\n"); 
    return (a-b);
}
int operacion (int (*operatoria) (int a, int b), int a, int b)

    int c ;
    c=(*operatoria)( a,  b);
    return ( c);
}

Saludos.

Viewing all articles
Browse latest Browse all 11602

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>