fptr is a function pointer, and even if I pass fptr instead of threadFunc in pthread_create() it still works.
Shouldn't it be *fptr that must be passed instead of just fptr? How is it working with fptr instead of *fptr?
#include <iostream>
#include <thread>
using namespace std;
void* threadFunc(void *arg){
cout<<"Thread FUnction\n";
pthread_exit(NULL);
}
int main(){
pthread_t my_thread;
void* (*fptr)(void*);
fptr=threadFunc;
int ret = pthread_create(&my_thread,NULL,fptr,NULL);
if(ret){
printf("Error creating thread\n" );
exit(EXIT_FAILURE);
}
pthread_exit(NULL);
}