関数ポインタ実戦1



/*  ,  * */
#include<iostream>
#include<stdio.h>
using namespace std;

typedef void * (*PInt)(int *,char *);   // 

PInt  pInt;   // 

void fun (int a,PInt b,int *str,char *std)
{
     b(str, std);      //  1 
   // (*b)(str, std); // 2  :  == & 
    cout << a <<endl;
    cout << "sucess"<<endl;
    return ;
}

void * getname(int *str,char * std)

{
    cout <<" i am hear"<<endl;
    if(str == NULL || std == NULL)
    {
        return NULL;
    }

    cout <<*(str +3)<<endl;
    cout <<*(std+ 4)<<endl;
    return NULL;

}
int main ()
{
    int a = 9;
    int str[] = {'2','3','5','7'};

    char std[] = "westos";  
  // pInt = getname;
    fun(a,&getname,str,std);
    return 0;
}

 i am hear
55
o
9
sucess
Press any key to continue