Page 1 of 1

c-datei in cpp datei umbenannt -> pthread_create will nicht mehr

Posted: 16. Jan 2007 9:14
by Maik
schönen guten tag,
musste meine c-datei in eine cpp datei umwandeln. hat auch alle wunderbar funktioniert.
jetzt will der compiler nicht mehr mein pthread_create anerkennen. kann mir einer sagen wie der code richtig aussehen müsste? danke

CODE:
pthread_t threadM;

void waitMassage(void)
{
while(1){
blabla}
}

pthread_create(&threadM,NULL,(void *)&waitMassage,Null);

FEHLER:

error: invalid converion from 'void*' to 'void*(*)(void*)'
error: initializing argument 3 of'int pthread_create(pthread_t*,const pthread_attr_t*,void*(*)(void*),void*)'

Posted: 16. Jan 2007 12:12
by Janka
C++ mag keine unpassenden Typumwandlungen. Es ist aber auch in C unnötig, einen Funktionspointer mit (void*)& zu erzeugen. Der Funktionsname allein genügt.

Um sowas besser nachvollziehbar zu machen, bitte immer eine kompilierbare Datei und den Compileraufruf mit

Code: Select all

...
einkleben.

Janka